为什么复杂条件在gitlab ci中不起作用



我有以下代码:

build:
stage: build
rules: 
- if: '$CI_COMMIT_TAG =~ /RELEASE/ && $CI_COMMIT_TAG =~ $CI_JOB_NAME'
when: always  
tags:
- test_ios_msb
script: 
- echo $CI_COMMIT_REF_NAME
- echo $CI_COMMIT_BRANCH
- echo $CI_COMMIT_TAG
- echo $CI_JOB_NAME 
- echo $CI_PIPELINE_SOURCE
- echo $CI_BUILD_TAG
- echo "ok"

在这种情况下,条件不起作用如果指定此条件:- if: '$CI_COMMIT_TAG =~ /RELEASE/'或者像这样:- if: '$CI_COMMIT_TAG =~ $CI_JOB_NAME'则条件工作

告诉我如何解决这个问题?

我想知道你那里的RELEASE。你为什么不试试/.*RELEASE.*/呢?

另外,试着去掉单引号。展开不会出现在单引号内。请参见此处。

最新更新