有没有办法在 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-构建步骤,您会希望有关于如何以管道格式编写的在线示例。如果你有任何具体的请列出它