【发布时间】:2021-12-17 01:57:46
【问题描述】:
我想在创建 MR 时在 MR(合并请求)命令部分查看声纳结果。
我的主要期望:
- 如果源分支存在现有 MR,则触发分离的管道(不要触发功能管道。我只需要那个来查看 MR 命令中的声纳结果)
- 如果源分支没有现有的 MR,只需触发正常的特征(源)分支管道
我尝试使用下面的示例阶段来做到这一点。但是当我将提交推送到源管道时,源分支存在 MR。我仍然得到双管道。分离和源管道正在运行,我不想同时看到两者,除了不使用规则配置。如何将除了部分与规则部分集成。
这是我的 gitlab-ci 阶段:
deploy:
stage: deployment
when: manual
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CUSTOM_VARIABLE == "true" || $CUSTOM_VARIABLE == "true"'
script:
- ....
- ....
except:
- tags
- main
我也尝试了以下规则,如果其中一个符合我的条件,请不要运行另一个。但它仍然会触发两个管道。
deploy:
stage: deployment
when: manual
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CUSTOM_VARIABLE == "true"'
when: on_success
- if: '$CI_PIPELINE_SOURCE == "push" && $CUSTOM_VARIABLE == "true"'
when: on_success
script:
- ....
- ....
except:
- tags
- main
【问题讨论】:
标签: gitlab sonarqube gitlab-ci