如何仅根据拉取请求在 Jenkins 中运行阶段?

2024-05-23

我现在有一个基于 Jenkinsfile 的管道,其中包含多个阶段,每次提交到 Github 时都会由 webhook 触发。我想在每次提交时保持“构建”和“单元测试”阶段运行,但仅在分支准备拉取请求时运行“集成测试”阶段。

我想要的是:

stage("build)"{
    // runs every commit
}
stage("unit tests"){
    // runs every commit
}
stage("integration tests"){
    // runs ONLY on pull request
}

我一直无法找到解决方案,有什么想法吗?


我发现了非常简单的声明式管道方法,无需任何插件,并且可以在任何地方使用。

        stage (' PR check ') {
        when {
                branch 'PR-*'  
            }

            steps {
            sh '''
            echo "PULL REQUEST CHECK IS DONE HERE"
            '''

            }

        }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何仅根据拉取请求在 Jenkins 中运行阶段? 的相关文章

随机推荐