gitlab-ci.yml 文件中 [STRING] 的正则表达式

2024-01-14

我试图在 gitlab-ci.yml 文件中设置部署阶段的规则,如果 git 提交消息具有这种格式的特定 [STRING],那么它应该部署到编写此规则的特定环境。

# Deploy to QAT environment
deploy-qat:
  stage: deploy
  extends: .helm_deploy
  environment:
    name: qat
  tags:
    - exe-prd
  rules:
    - if: $CI_COMMIT_MESSAGE =~ "/[QAT]$/|/[qat]$/"  #&&  $CI_COMMIT_REF_NAME == "example/qat"
      when: always

我已经写了上面的规则,但它不起作用。我尝试了以下正则表达式的组合,但它们都不起作用。

"/\[QAT\]/|/\[qat\]/"
"/[QAT]/|/[qat]/"
"*\[QAT\]*|*\[qat\]*"
"\[\(QAT\|qat\)\]"
"\[\(QAT\|qat\)]"
"/\[(qat|QAT)\]/"

我尝试了以下网站的正则表达式here https://regex101.com/r/cO8lqs/6这验证了我的要求,但它在 gitlab-ci.yml 文件中不起作用。


您可以使用

# Deploy to QAT environment
deploy-qat:
  stage: deploy
  extends: .helm_deploy
  environment:
    name: qat
  tags:
    - exe-prd
  rules:
    - if: $CI_COMMIT_MESSAGE =~ /\[(QAT|qat)]/
      when: always

有关如何格式化正则表达式匹配条件的更多信息,请参见rules:variables https://docs.gitlab.com/ee/ci/yaml/#common-if-clauses-for-rules参考页。

NOTES:

  • /\[(QAT|qat)]/不应放在引号内
  • 你需要使用/.../正则表达式文字语法(反斜杠是正则表达式分隔符)
  • \[(QAT|qat)]是一个匹配的正则表达式[,那么要么QAT or qat,然后是一个] char
  • =~是一个正则表达式匹配运算符。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gitlab-ci.yml 文件中 [STRING] 的正则表达式 的相关文章

  • 需要正则表达式(使用 C#)将所有空白压缩为单个空白

    我需要将文档中的多个空格替换为单个空格 每次迭代 无论它们是空格 制表符还是换行符 任何类型的空格的任何组合都需要被截断为单个空格 假设我们有字符串 Hello t t n t n world 其中 t 和 n 分别代表制表符和换行符 那么
  • 使用 Yarn 从 Gitlab 安装私有包

    我有一个私有 npm 包 它使用 Gitlab CI 管道发布到 Gitlab 包注册表 我想在项目中使用安装这个包yarn 遵循文档帮助我想出了以下内容 npmrc file gitlab com api v4 packages npm
  • 使用 JavaScript 更改 HTML 内的日期格式

    我在页面上有以下代码 span class release date i class fa fa calendar i 2014 11 16 span This 2014 11 16是日期 由我的 CMS 自动生成 我需要更改这个日期 基本
  • 使用 sed 删除非字母数字字符

    我正在尝试验证一些输入以删除一组字符 只允许使用字母数字字符加 句点 下划线 连字符 我测试了正则表达式 w here http gskinner com RegExr http gskinner com RegExr 它与我想要删除的内容
  • 正则表达式允许零,只要它不是第一个数字[重复]

    这个问题在这里已经有答案了 昨天我在这里发布了一个问题正则表达式允许 null 或 1 到 9 数字 https stackoverflow com questions 40354842 regular expression allow n
  • 匹配括号内任何字符的正则表达式

    尝试创建一个与括号内的任何字符匹配的正则表达式 我的正则表达式模式是这样的 preg match listanswer answer 括号内的所有字符串都是匹配模式 但问题是 当我尝试匹配例如 this word sample data 它
  • [Regex]::Replace() 和 -replace 有什么区别?

    我明白了之间的区别 Replace and replace 但是什么是 replace and Regex Replace 我测试了以下两个代码 但对我来说结果完全相同 我还提到了 PowerShell Cookbook O reilly
  • 自动将所有 GitHub 存储库镜像到 gitlab

    对于 GitLab 必须手动为每个存储库设置拉 推镜像 我想知道那里有any way可以自动将所有 Github 存储库同步到 GitLab 这样 当您在 GitHub 中创建新的存储库时 GitLab 中的存储库将自动创建 并充当拉取镜像
  • 使用 posix shell 测试字符串中的正则表达式

    如何测试字符串是否与特定字符串匹配正则表达式与基本 无 bash 或任何其他 posix shell 脚本 在 if 语句中 您可以使用expr在 POSIX shell 中计算正则表达式的命令 s Abc expr s alpha 3 e
  • 从正则表达式对象中提取允许字符串的最大长度

    一旦加载到 C 中 是否可以从正则表达式模式中提取允许的字符串的最大长度Regex object 如果我有一个正则表达式字符串定义为 A Z0 9 0 20 我可以使用字符串操作来获取最大允许长度20 但是 有没有一种方法可以更轻松地实现这
  • grep 两个分隔符之间的子字符串

    我有很多bash使用的脚本perl内的表达式grep为了提取两个分隔符之间的子字符串 例子 echo BeginMiddleEnd grep oP lt Begin End 问题是 当我将这些脚本移植到运行的平台时busybox 融合的 g
  • Pure Bash 替换捕获组

    我有这个示例字符串 test string 13A6 该字符 数字可以是从 0 到 9 以及从 A 到 F 我想要这个输出 1 3 A 6 我有这个工作 result echo test string sed s g 我想在没有 sed 的
  • 正则表达式最多匹配五个单词

    我有一个正则表达式 a zA Z 0 9 1 5 它验证该单词包含字母数字字符和少数特殊字符 并且长度不应超过5人物 如何使此正则表达式接受最多五个与上述正则表达式匹配的单词 a zA Z 0 9 1 5 s a zA Z 0 9 1 5
  • 正则表达式的 o 修饰符是什么意思?

    Ruby 正则表达式有一些选项 例如i x m o i例如 意味着忽略大小写 什么是o选项是什么意思 在ri Regexp 它说o意味着执行 仅插值一次 但是当我这样做时 a one b a a two b不改变 它保持 one 我缺少什么
  • PHP 正则表达式匹配字符串的最后一次出现

    我的字符串是 text1 A373R12345 我想找到该字符串最后出现的非数字数字 所以我使用这个正则表达式 0 9 然后我得到这个结果 1 A373 2 12345 但我的预期结果是 1 A373R 它有 R 2 12345 另一个例子
  • 正则表达式,如果模式在引号中则忽略模式

    编写一个非常简单的脚本解析器作为学校项目的一部分 虽然这不是必需的 但我很好奇是否可以仅使用正则表达式来完成 语法类似于 ASP 其中脚本以 结尾 它只支持一个命令 pr 与echo或Response Write相同 现在我正在使用这个正则
  • MySQL正则表达式:如何将字符串中的数字与\d匹配?

    我有一个专栏release date它以字符串格式存储日期 不是 DATETIME 格式 因为它们有时可以是任何其他字符串文字 我想根据给定的月份和年份查找任意日期的所有记录 尝试遵循但对我不起作用 gt Post find all con
  • sed 错误“未终止的 's' 命令”故障排除

    我正在构建一个script https stackoverflow com questions 4036832 replacing a specific term in an xml file其中 它将用文件夹路径替换 XML 文件中的模式
  • 匹配所有有效格式 IPv6 地址的正则表达式

    乍一看 我承认这个问题看起来像是这个问题以及与之相关的任何其他问题的重复 匹配有效 IPv6 地址的正则表达式 https stackoverflow com questions 53497 regular expression that
  • 为什么 re.findall 在查找字符串中的三元组项时不具体。 Python

    所以我有四行代码 seq ATGGAAGTTGGATGAAAGTGGAGGTAAAGAGAAGACGTTTGA OR 0 re findall r ATG 9 TAA TAG TGA seq 首先让我解释一下我正在尝试做什么 如果这令人困惑

随机推荐

  • 将 1 到 32 位数字附加到字符缓冲区

    我有一个char 缓冲区 我想附加各种位大小的整数 在1 and 32 to 因此 我需要一个函数 void addBits char buffer int bits appended so far int object int objec
  • 追加 DOM 元素两次 (jQuery)

    有人可以解释为什么以下代码片段没有添加
  • 并发写入同一缓存行中的不同位置

    假设我有一个 C 11 应用程序 其中两个线程写入不同但邻近内存位置 使用指向原始类型的简单指针 我能否确定这两个写入最终都会进入内存 可能在两者都达到boost barrier http www boost org doc libs 1
  • Rabbitmq 使用 .NET 使用单个同步调用检索多条消息

    有没有办法使用 NET 使用单个同步调用来接收多条消息 我见过question https stackoverflow com questions 17005515 rabbitmq retrieve multiple messages u
  • 如何对 Rails 中 Prawnto 生成的 PDF 进行内联格式(粗体和下划线)?

    我在 Rails 应用程序中使用 Prawn 和 Prawnto 插件生成 PDF 文件 我创建一个带有标准文本区域的标准表单 并将其作为 PDF 文件的正文提交 但是 我需要能够使用以下方式格式化单词和句子 bold 强调 也许不同的字体
  • 受影响的行实体框架

    如何获取 SaveChanges 后受影响的行数 The 保存更改 http msdn microsoft com en us library bb336792 aspx方法返回所有已更改项目的 int MSDN 片段 返回值 类型 Sys
  • 在javascript中选择区域/矩形

    我需要通过鼠标在 HTML5 页面中选择一个区域 然后我将与该区域内的元素进行交互 一定有一种简单的方法可以做到这一点 但我找不到现成的任何东西 不幸的是 jquery UI 选择不起作用 因为它似乎只支持一个父元素 有没有现成的东西可以在
  • 如何以编程方式突出显示 UIButton?

    很多用户抱怨 iPhone 上的小 i 信息按钮很难触摸 好吧 很简单 我只是在它后面贴了一个又大又大的隐形按钮 即使你用最粗心的手指触摸也不会错过它 当你触摸它时 它就会执行 infoButtonAction 事实是 我想让信息按钮本身闪
  • 递归算法的空间复杂度

    我在一次面试中被问到 解决问题的有效方法是检查回文 现在我可以做两件事 从 i 0 开始到 i n 2 并比较第 i 个和第 n 个字符是否相等 我可以使用递归来检查第一个和最后一个是否相同 并且字符串的其余部分是否为回文 第二个是递归的
  • 垃圾收集机制如何工作? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 用外行术语来说 垃圾收集机制是如何工作的 如何识别对象可用于垃圾回收 还有 做什么Reference Counting Mark an
  • 如何判断 Map 是否有默认值?

    有没有办法检查是否Map有定义的默认值吗 我想要的是相当于myMap getOrElse x y 如果关键在哪里x不在地图上 if myMap有默认值 返回该值 否则返回y 该问题的一个人为示例 scala gt def f m Map S
  • 如何在 MFC 应用程序中托管 WPF 表单

    我正在寻找有关在现有 MFC 应用程序中托管 WPF 表单的任何资源 谁能指出我如何做到这一点的正确方向 据我了解 我自己没有尝试过 这几乎就像将 WPF 控制权交给父级句柄一样简单 这是一个演练 在 Win32 中托管 WPF 内容 ht
  • 如何从.net core实体框架调用带有表值参数的存储过程

    我有一个带有表值参数的存储过程 我必须从 net core 中的实体框架调用它 我在上下文对象上找不到任何 API 我尝试过使用 ADO net API 它有效 但现在我必须从 net core 中的 EF 调用它 我必须调用的存储过程返回
  • PHP 多维数组访问

    假设我在 PHP 中有一个多维数组 例如 this array array string name gt string string array gt array string key gt string val 如何访问字符串数组键值对
  • XML 解析错误:文档末尾有多余内容

    我的 xml 文件中出现此错误 XML Parsing error Extra content at the end of the document 我正在使用 Notepad 它在标题标签中显示第二个红色单词
  • Linq 中的 Union 与 Concat

    我有一个问题Union and Concat var a1 new 1 2 Union new 1 2 O P 1 2 var a2 new 1 2 Concat new 1 2 O P 1 2 1 2 var a3 new 1 2 Uni
  • 如何在 Android 设备上的 Flutter 应用程序中显示 TIFF 图像?

    我们的应用程序允许用户建立各种类型的资源库 例如 PDF 电子表格等 我们存储在 S3 上的几乎任何 MIME 类型的文档 当用户点击查看任何这些资源时 我们基本上可以确定我们使用的是 iOS 设备还是 Android 设备 在 iOS 上
  • 频繁使用 localStorage 会减慢我的网站速度吗?

    我正在开发一个 HTML5 游戏 我需要知道频繁更新 localStorage 属性是否会减慢页面速度 我实际上将英雄的位置存储在四个 localStorage 属性中 两个用于实际位置 两个用于碰撞检测系统中使用的过去位置 并每 1 秒间
  • 无需登录或没有任何安全性即可浏览 Nexus 存储库

    我这里有一个非常简单的用例 用例 要求 我想配置我所有的 Nexus 存储库 与我在中看到的非常相似https oss sonatype org view repositories appfuse releases browseindex
  • gitlab-ci.yml 文件中 [STRING] 的正则表达式

    我试图在 gitlab ci yml 文件中设置部署阶段的规则 如果 git 提交消息具有这种格式的特定 STRING 那么它应该部署到编写此规则的特定环境 Deploy to QAT environment deploy qat stag