GitLab CI配置:仅为候选发布分支运行指定阶段
适配GitLab CI候选发布分支的deploy阶段配置调整
没问题,我来帮你搞定这个配置调整,让deploy阶段自动识别所有像cis-rel1.0、cis-rel2.0这类格式的候选发布分支。
你只需要把production job里的only规则改成正则表达式匹配就可以了,GitLab CI支持用正则来匹配分支名。修改后的完整配置如下:
image: java:8 stages: - build - deploy build: stage: build script: ./mvnw package artifacts: paths: - target/demo-0.0.1-SNAPSHOT.jar production: stage: deploy script: - curl --location "https://cli.run.pivotal.io/stable?release=linux64-binary&source=github" | tar zx - ./cf login -u $CF_USERNAME -p $CF_PASSWORD -a api.run.pivotal.io - ./cf push only: - /cis-rel\d+\.\d+/
简单解释下这个正则:
/.../是GitLab CI里标记正则表达式的写法cis-rel匹配分支名的固定前缀\d+匹配一个或多个数字(比如1、2、10这些)\.匹配小数点(因为小数点在正则里是特殊字符,所以要加反斜杠转义)- 最后的
\d+匹配小数点后的版本号数字
这样不管是cis-rel1.0、cis-rel2.0,甚至cis-rel10.3这类分支,deploy阶段都会自动触发执行。如果之后需要支持更复杂的版本格式(比如cis-rel1.0.1),可以把正则改成/cis-rel\d+\.\d+(\.\d+)?/,这样就能匹配带补丁号的分支了。
内容的提问来源于stack exchange,提问作者john Shepherd
相关产品推荐
相关产品推荐

