我有一个Jenkins管道,其中有10个Jobs配置为在后期构建操作中一个接一个地运行。 每当Job的相关git代码发生变化时,都会触发构建,并且随后的所有作业都将运行,尽管其余的Job代码未提交。
例如,在管道中的一系列10个作业中,如果第二个作业中有代码更改而第三个作业中没有代码更改,那么我想跳过第二个作业并直接构建第三个作业。 同样,任何未更改代码的作业,都希望跳过并跳至下一个作业。
如果可以解决管道中不需要的构建,请提供帮助。
预先感谢
我尝试使用scm skip和ci skip插件。
更改配置
对于不需要构建的工作(如果没有代码更改),我需要跳过jenkins管道中的构建
答案 0 :(得分:0)
您可以使用它跳过执行构建的阶段,该作业将不会被调用
import org.jenkinsci.plugins.pipeline.modeldefinition.Utils
if (noChanges)
{
Utils.markStageSkippedForConditional(STAGE_NAME)
}
答案 1 :(得分:0)
您可以使用 when 块跳过一个舞台。示例:
第一份工作:
stage{
// build steps
}
post {
build "job2"
}
第二份工作:
stage{
when{
expression{
changes_made != true // changes_made parameter should be set according to code changes
}
}
steps{
// build steps
}
}
post {
build "job3"
}
这样,您将根据是否更改了任何代码的事实来跳过第二个作业的阶段。