【问题标题】:Execute Parallel Jenkins steps and move to next stage independent of the second step state of execution执行 Parallel Jenkins 步骤并独立于第二步执行状态进入下一阶段
【发布时间】:2020-01-13 14:47:08
【问题描述】:

我正在尝试从旧的上游-下游作业执行 Jenkins 管道构建。

    node () {
stage('Checkout') {
    <Code for checkout> 
    }
stage ('Support') {
    <Restore dependencies>
    <Restore build environment>
    }
    stages{
        parallel{
            stage ('Build and Archive'){
                stages{
                    stage ('BuildSolution') {
                        <Build Solution>
                        }
                    stage ('Signing') {
                        <Sign deliverables>
                        }
                    stage ('InstallerCreation') {
                        <Create deployment package>
                        }

                    stage ('CreateNgPkg') {
                        <Create SDK package>
                        }
                    }
                }
            stage ('SecurityScan'){
                <Execute scan on the complete source code>
                }
            }
        }
    }
}

我想在 stage ('Build') 之后并行运行 stage ('Build')stage ('Scan') > 执行它应该开始 stage ('CreateNgPkg') 而不检查或等待 stage ('Scan')


更新:

我尝试使用上述嵌套阶段来实现我所需要的,但它在执行时给出错误“在步骤中找不到这样的 DSL 方法'阶段'”。 - 没有语法错误,只是在运行时出现。

【问题讨论】:

  • 为什么不将其添加为另一个并行作业?还是您的意思是 stage("Build") 不仅要执行,还要完成?

标签: jenkins jenkins-pipeline


【解决方案1】:

您要做的是执行阶段集构建,然后与阶段扫描并行执行 CreateNgPkg

它转换为以下 Jenkins DSL:

node () {
    stage ('Checkout') 
    {
        echo 'Checkout'
    }
    stage ('Support') 
    {
        echo 'Support'
    }
    parallel Build: {
        stage ('Build') 
        {
            echo 'build'
        }
        stage ('CreateNgPkg') 
        {
            echo 'CreateNgPkg'
        }
    }, secondStage: {
        stage ('Scan') 
        {
            echo 'scan'
        }
    }
}

我个人更喜欢声明式 dsl,它有更好的文档记录并且可以被 linted https://jenkins.io/blog/2017/09/25/declarative-1/

【讨论】:

  • 我尝试了jenkins.io/blog/2018/07/02/… 中提到的嵌套步骤,但没有奏效。
  • 感谢您的回复。我尝试使用您的语法,它按预期工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-05
  • 1970-01-01
相关资源
最近更新 更多