git 在Jenkins中构建特定文件夹更改时的触发器

2g32fytz  于 2023-03-11  发布在  Git
关注(0)|答案(1)|浏览(246)

配置Jenkins:只有在特定文件夹更改时才触发。
例如:在文件目录中:样本/文件夹/有3个子文件夹:F1、F2、F3。Jenkins构建应在F3更改时触发,并且不应在构建中包含F1、F2。这3个文件夹在构建方面应是独立的,但应位于同一文件目录中。另外,我们是否可以监视文件夹中的更改?

blmhpbnm

blmhpbnm1#

使用Jenkins pipelines,通过查询构建变更集as in here开始您的工作。
当且仅当变更集包含特定元素时,查看when { anyOf { changeset directive是否足以构建。
请参阅管道语法内置条件
changeset
如果生成的SCM变更集包含一个或多个与给定字符串或Glob匹配的文件,则执行该阶段。示例:when { changeset "**/*.js" }
PFudd在注解中所述:

警告:创建新分支时,变更集在第一次生成时将为空。如果单击“重新生成”,它也将为空。请参阅“Jenkins Pipeline how to check for an empty changelog

Jenkins团队意识到了这一点,但由于Git的复杂性,他们并不打算修复它,因为没有普遍正确的方法来确定要比较的父节点:参见issue JENKINS-26354
参考:stackoverflow.com/questions/70307972/...

相关问题