Gitlab CI - 仅当特定文件集发生更改时如何触发构建

Ish*_*han 17 git continuous-integration build gitlab gitlab-ci

在Gitlab CI中,只有在特定文件集上发生更改时,如何触发构建?

有没有办法在触发构建时包含或排除某些文件?例如:更新README.md, .gitignore文件不应导致构建触发.

Con*_*hea 8

更新:从 11.4 开始,这是可能的,请参阅https://docs.gitlab.com/ee/ci/yaml/#ruleschanges

\n

原帖:

\n

目前没有任何方法可以根据已编辑的文件有条件地触发 GitLab CI 中的构建。

\n

我之前自己也考虑过这个功能,我认为它对于许多不同的用例非常有用。

\n

我能找到的最接近的问题是https://gitlab.com/gitlab-org/gitlab-ce/issues/23010

\n

不管怎样,回答你的问题:

\n

你现在无法真正执行此操作\xc2\xa0\xe2\x80\x93,甚至手动\xe2\x80\x93,因为没有办法确定合并请求是否已更改文件,因为 CI 已经没有合并请求的概念。

\n

应该很快就会添加“理解”合并请求的管道。

\n


mhe*_*ier 8

更新:

就像评论中提到的Gajus一样,它现在是可能的!

https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/21981

原帖:

不,这是不可能的 - 不是现在!

我认为这是您正在寻找的问题:https://gitlab.com/gitlab-org/gitlab-ce/issues/19232 - 这是一个非常高评价的问题(超过100次重击).

里程碑已经改为4个月前的下一个3-6个月.(https://gitlab.com/gitlab-org/gitlab-ce/issues/19232#note_31943850)我希望我们很快就能看到这个功能.

  • 在每个自述文件编辑中,我们都需要修改库的版本,否则管道将失败..我的意思是他们在想什么:( (2认同)