【发布时间】:2022-07-15 06:14:16
【问题描述】:
我的模板如下所示:
/templates/.copy-echo.yml:
workflow:
rules:
- if: '$CI_COMMIT_REF_NAME == "master"'
variables:
FILE_PATH: /test_conf_1.txt
DESTINATION_HOST: somehost
stages:
- copy
- echo
copy step 1/2:
rules:
- changes:
- ${FILE_PATH}
stage: copy
script: |
echo "Add copy here!"
copy step 2/2:
rules:
- changes:
- ${FILE_PATH}
stage: echo
script: |
printenv
echo ${DESTINATION_HOST}
现在在我的.gitlab-ci.yml:
include: '/templates/copy-echo.yml'
variables:
FILE_PATH: /test_conf_1.txt
DESTINATION_HOST: somehost2
现在我想要的是有条件地为 DESTINATION_HOST 变量分配一个值,具体取决于合并请求中更改了哪个文件。
例如如果合并请求对文件test_conf_2.txt 进行了更新,则DESTINATION_HOST 的值应为somehost2,如果合并请求对文件test_conf_3.txt 进行了更新,则DESTINATION_HOST 的值应为somehost3。
有可能实现吗?
【问题讨论】:
标签: gitlab-ci