有没有办法在 Jenkins 多分支管道作业中启用 post 流程操作?
Is there a way to enable post process actions in a Jenkins multibranch pipeline job?
我有一个项目使用多分支管道来获取 git 服务器的所有分支,然后构建它。我需要在那里做一些 post 构建操作,但由于某种原因,构建中没有可用的 post 操作配置。既不在多分支管道中,也不在获取的子项目中。但是 post 构建配置在普通的 Jenkins 作业中可用。
到目前为止,我知道的唯一方法是调整 Jenkinsfile。但是在 Jenkins 前端做一些工作会很棒。
编辑: 我发现的另一种方法是创建一个 自由式项目,当成功构建多分支项目中的目标分支时将触发该项目。这里的缺点是项目必须运行第二次,因为我无法访问另一个分支的jar文件。
有没有办法为这样的作业添加 post 构建步骤?如果可以,怎么做?
Jenkinsfile 背后的主要思想是让您的 "infrastructure as code"。因此,您的作业配置(包括 post-构建步骤)应该在 SCM 中进行版本控制。
要向多分支管道添加 post 个构建步骤:
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
}
}
对于大多数 post-构建步骤,您会希望有关于如何以管道格式编写的在线示例。如果你有任何具体的请列出它
我有一个项目使用多分支管道来获取 git 服务器的所有分支,然后构建它。我需要在那里做一些 post 构建操作,但由于某种原因,构建中没有可用的 post 操作配置。既不在多分支管道中,也不在获取的子项目中。但是 post 构建配置在普通的 Jenkins 作业中可用。
到目前为止,我知道的唯一方法是调整 Jenkinsfile。但是在 Jenkins 前端做一些工作会很棒。 编辑: 我发现的另一种方法是创建一个 自由式项目,当成功构建多分支项目中的目标分支时将触发该项目。这里的缺点是项目必须运行第二次,因为我无法访问另一个分支的jar文件。
有没有办法为这样的作业添加 post 构建步骤?如果可以,怎么做?
Jenkinsfile 背后的主要思想是让您的 "infrastructure as code"。因此,您的作业配置(包括 post-构建步骤)应该在 SCM 中进行版本控制。
要向多分支管道添加 post 个构建步骤:
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
}
}
对于大多数 post-构建步骤,您会希望有关于如何以管道格式编写的在线示例。如果你有任何具体的请列出它