当前位置:  开发笔记 > 前端 > 正文

仅在更改作业scm文件夹中的特定子文件夹时触发Jenkins作业

如何解决《仅在更改作业scm文件夹中的特定子文件夹时触发Jenkins作业》经验,为你挑选了1个好方法。

我正在将持续集成系统从Teamcity迁移到Jenkins.我们为我们所有的项目都有一个svn存储库,如下所示:

project/dev_db_build (folder)
project/module1 (folder)
project/module2 (folder)
projets/pom.xml

为了在CI服务器上构建数据库,我使用url project/dev_db_build并且可以在有更改时使用此URL来触发构建.

对于构建应用程序,我使用url项目/所以如果我轮询它并且对dev_db_build进行更改应该忽略并在db_build成功后触发应用程序构建.

在团队中,我使用了"触发模式".但在詹金斯有很多触发插件https://wiki.jenkins-ci.org/display/JENKINS/Plugins#Plugins-Buildtriggers - 我调查了其中一些并且找不到合适的插件.



1> Tom Howard..:

理想情况下,您应该使用@Mike建议的post-commit钩子,而不是轮询.否则,在配置Jenkins作业时,在"源代码管理"下选择"Subversion",会出现一个高级按钮.点击此按钮会显示许多选项,包括"排除的区域"

如果设置,并且Jenkins设置为轮询更改,Jenkins将在确定是否需要触发构建时忽略此列表中的所有文件和/或文件夹.每个排除使用正则表达式模式匹配,并且必须用新行分隔.

/trunk/myapp/src/main/web/.*.html

/trunk/myapp/src/main/web/.*.jpeg

/trunk/myapp/src/main/web/.*.gif

上面的示例说明如果只有html/jpeg/gif文件已提交给SCM,则不会发生构建.有关正则表达式的更多信息,请访问此处.

在您的情况下,您可以将"排除的区域"设置为类似的内容

/project/dev_db_build/.*

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有