版本控制(Bitbucket)的Jenkins多分支管道-我可以为特定分支指定规则吗?

我目前正在从BitBucket创建多分支管道,该管道将自动构建所有分支。这对于请求请求非常有帮助,并且总体上节省了大量时间。但是,此特定项目有所不同-它是一个Web应用程序,它由2个不同的Jenkins作业构建:

作业1:从版本控制(Subversion和Git)中检出文件,以及是否成功触发了作业2(来自作业配置)。

作业2:将文件从作业1传输到节点,然后执行部署脚本。这项工作中有很多额外的配置,我不需要解释。如果此作业成功,则将部署Web应用程序。

但是,多分支管道的工作方式是指向每个分支的Jenkins文件(开始Job 1)并进行构建。每次都成功,但是不会触发Job2。同样,在BitBucket中,它会显示为所有分支的成功构建,因为它只查找该特定任务。

是否可以为分支作业制定单独的规则,以便它们触发另一个作业,并且如果构建已通过或失败,BitBucket会寻找该作业作为参考?我非常不希望将整个功能合并到一个JenkinsFile中,因为这将是一个巨大的变化。谢谢。

lixiaolin823 回答:版本控制(Bitbucket)的Jenkins多分支管道-我可以为特定分支指定规则吗?

目前尚不清楚您在第二个作业中执行了哪些操作,以了解所有作业是通用的还是每个分支的作业都非常不同。

首先假设,您的第二份工作对所有分支都是公用的,您可以在每个分支中都有一个Jenkins文件,从而触发该共同的工作(基于位于公共位置的另一个jenkins文件)。

第二,如果每个分支的功能不同,我建议提供一个通用函数,并尝试根据第一个Jenkins文件中每个分支的要求传递参数。

这只是一个想法。如果您可以对第二职业的行为进行更多的解释,我也许可以提出更多想法来帮助您。

本文链接:https://www.f2er.com/3160888.html

大家都在问