Jenkins CI是一个非常强大的工具,可以使用它安装一些插件。 最近我有一个关于两个并行处理作业的需求。 我们知道很多插件都实现了这个功能,比如join插件、Trigger参数化插件等等。 不过我还需要另一个功能。
我们想要的新功能如下:
作业 A 和作业 B 正在并行处理,如果作业 A 构建失败,则作业 B 立即停止运行。
我还没有找到任何插件可以实现这一点。
您能帮助我并告诉我是否有任何具有此类功能的插件吗?
非常感谢!
将 DSL 脚本与 Build Flow 插件结合使用。
JOB A
|------> JOB B
|------> JOB C
|------> JOB D
尝试执行此示例:
构建(“工作A”)
平行 ( {构建(“工作B”)} {构建(“作业C”)} )
构建(“工作D”)
如果您想阻止下游/上游工作链定义的混乱。或者当您想要添加将按顺序或并行执行的 Jenkins 作业的完整层次结构时。将上下文添加到构建流程中,实现从 MultiJob 到其所有阶段和作业的参数继承。阶段是连续的,而每个阶段内的作业是并行的。 https://wiki.jenkins-ci.org/display/JENKINS/Multijob+Plugin
我最喜欢的尝试这个尝试锁和闩锁插件:https://wiki.jenkins-ci.org/display/JENKINS/Locks+and+Latches+plugin
您可以使用管道并行关键字。
stage('parallel job'){
parallel{
stage('job1'){
steps{ build 'job-1'}
}
stage('job2'){
steps{ build 'job-2'}
}
}
}
Job-1 和 Job-2 并行运行。 如果 job-1 在 job-2 运行时失败,则 job2 将中止。
只有所有并行阶段都成功完成后,才会进入下一阶段。