【发布时间】:2022-01-23 09:25:04
【问题描述】:
我有以下 .gitlab-ci.yml 配置,我希望作业 update-environment 仅在推送到 main 或 MR 到 main 时运行。
通过 printenv 调试 gitlab 环境变量我可以看到定义的两个规则都应该评估为 true。但这项工作永远不会运行。工作需要在一个阶段中定义还是我错过了什么?
default:
image: alpine
tags:
- "workstation"
validation:
script:
- |
echo "I will always run"
printenv # Checking GitLab Environment Variables
update-environment:
rules:
# - changes:
# - "*.yaml"
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "$CI_DEFAULT_BRANCH"'
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "$CI_DEFAULT_BRANCH"'
script:
- |
echo "Updating environment"
【问题讨论】: