我能够从硬编码的提交消息触发我的管道,例如:
规则:
但是我想使用项目级别变量(设置> CI>变量)作为提交消息,例如
规则:
尽管文件上的提交消息与变量匹配,但这并不会启动管道。也不执行以下操作:
- if: ‘$CI_COMMIT_MESSAGE =~ /{$RELEASE_ID}/’
- if: '$CI_COMMIT_MESSAGE =~ /"$RELEASE_ID"/'
- if: '$CI_COMMIT_MESSAGE == $RELEASE_ID'
- if: '$CI_COMMIT_MESSAGE == "$RELEASE_ID"'
这可行吗?
- if: ‘$CI_COMMIT_MESSAGE =~ /{$RELEASE_ID}/’
- if: '$CI_COMMIT_MESSAGE =~ /"$RELEASE_ID"/'
- if: '$CI_COMMIT_MESSAGE == $RELEASE_ID'
- if: '$CI_COMMIT_MESSAGE == "$RELEASE_ID"'
...此后我尝试了 Egor 的建议,将 exp 放入变量本身。所以我将 /1.0.1/ 添加到我的变量中。仅当我在提交中指定 1.0.1 而没有其他任何内容时,此操作才有效 - 如果提交包含其他文本,则此操作不起作用。我已经尝试过 /1.0.1/gi 但仍然不走运。
可以将正则表达式存储在变量中。因此,在您的情况下,您可以在“设置”中将 RELEASE_ID
变量设置为值
/0.0.9/
,然后在
gitlab-ci
文件中使用此变量:
rules:
- if: $CI_COMMIT_MESSAGE =~ $RELEASE_ID