我有一个项目,它使用多分支管道来获取 git 服务器的所有分支,然后构建它。我需要在那里执行一些构建后操作,但由于某种原因,构建中没有可用的后期操作配置。既不在多分支管道中,也不在获取的子项目中。但是构建后配置在正常的 Jenkins 作业中可用。
到目前为止,我所知道的唯一方法是调整 Jenkinsfile。但是在 Jenkins 前端做一些工作会很棒。编辑:我发现的另一种方法是创建一个 Freestyle 项目,当成功构建多分支项目内的目标分支时,将触发该项目。这里的缺点是该项目必须第二次运行,因为我无法访问另一个分支的 jar 文件。
有没有办法将构建后步骤添加到此类作业中?如果是这样,如何?
Jenkinsfile 背后的主要思想是拥有你的"基础设施即代码"。因此,您的作业配置(包括构建后步骤(应在 SCM 中进行版本控制。
要将构建后步骤添加到多分支管道,请执行以下操作:
node {
try {
stage("Checkout") {
// checkout scm
}
stage("Build & test") {
// build & Unit test
}
} catch (e) {
// fail the build if an exception is thrown
currentBuild.result = "FAILED"
throw e
} finally {
// Post build steps here
/* Success or failure, always run post build steps */
// send email
// publish test results etc etc
}
}
对于所需的大多数构建后步骤,都有有关如何以管道格式编写的在线示例。 如果您有任何特定的,请列出