Jenkins 跳过詹金斯管道中的工作

Jenkins 跳过詹金斯管道中的工作,jenkins,jenkins-pipeline,jenkins-plugins,jenkins-groovy,Jenkins,Jenkins Pipeline,Jenkins Plugins,Jenkins Groovy,我有一个Jenkins管道,其中有10个作业配置为在构建后操作中一个接一个地运行。 每当作业的相关git代码发生更改时,就会触发生成,并运行以下所有作业,尽管作业代码的其余部分未提交 例如,在管道中的一系列10个作业中,如果第2个作业中有代码更改,但第3个作业中没有代码更改,则我希望跳过第2个作业,直接构建第3个作业。 同样,任何代码未更改的作业都希望跳过并跳转到以下作业 如果有,请帮助我;这是一种解决管道中不需要的构建的方法 提前谢谢 我尝试使用scm skip和ci skip插件 配置更改

我有一个Jenkins管道,其中有10个作业配置为在构建后操作中一个接一个地运行。 每当作业的相关git代码发生更改时,就会触发生成,并运行以下所有作业,尽管作业代码的其余部分未提交

例如,在管道中的一系列10个作业中,如果第2个作业中有代码更改,但第3个作业中没有代码更改,则我希望跳过第2个作业,直接构建第3个作业。 同样,任何代码未更改的作业都希望跳过并跳转到以下作业

如果有,请帮助我;这是一种解决管道中不需要的构建的方法

提前谢谢

我尝试使用scm skip和ci skip插件

配置更改


我需要跳过jenkins管道中不需要生成的作业的生成(如果没有代码更改)

您可以使用此选项跳过执行生成的阶段,并且不会调用该作业

import org.jenkinsci.plugins.pipeline.modeldefinition.Utils

if (noChanges)
 { 
    Utils.markStageSkippedForConditional(STAGE_NAME)
 }

您可以使用它跳过执行构建的阶段,并且不会调用作业

import org.jenkinsci.plugins.pipeline.modeldefinition.Utils

if (noChanges)
 { 
    Utils.markStageSkippedForConditional(STAGE_NAME)
 }

您可以使用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"
}

通过这种方式,如果代码发生了更改,您将根据实际情况跳过第二个作业的各个阶段

您可以使用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"
}
通过这种方式,如果代码发生了更改,您将根据实际情况跳过第二个作业的各个阶段