在合并到master时运行Gitlab CI作业,只进行更改



是否有一种方法可以可靠地执行只有在脚本发生更改时才能在merge-to-master上执行的作业?我正在使用

vm-build:
image: 
name: path_to_image
stage: vm-deploy
only:
changes:
- job.gitlab-ci.yml
refs:
- master
except:
- schedules
- triggers
script:
- ansible-playbook playbooks/pb_job.yml
tags:
- docker

但它似乎在对master的不同提交上执行"job",其中job.gitlab-ci.yml没有改变。不过,我还没有找到一个韵律或原因。

以下.gitlab-ci.yml仅在更改master分支上的文件jobs.gitlab-ci.yml时运行:

myjob:
script:
- echo I am a CI job
only:
changes:
- job.gitlab-ci.yml
refs:
- master

它不会在更改master分支中的任何其他文件时运行。

最新更新