【问题标题】:Jenkins launch job through DSL and do not wait for job to finishJenkins 通过 DSL 启动工作,不要等待工作完成
【发布时间】:2017-08-23 20:01:47
【问题描述】:

我正在尝试通过 Jenkins DSL 启动一个项目,但不需要等待它完成。基本上我希望它开始一个孤儿工作。

node("slave-node")
{
    // Launch pipeline job
    stage("LaunchPipelineJob")
    {
        // this step runs for x mins and does a buch of work
        echo "Starting pipelinejob"
        def pipelinejob  = build job: 'pipelineStep'
        //echo "Pipeline job status: ${pipelinejob.result}"
    }

    // Launch the orphan
    stage("LaunchOrphanJob")
    {
        // need to kick off this job, but dont care to wait for it to finish
        echo "Starting orphanPipelinejob"
        def orphanPipelinejob  = build job: 'orphanStep'
    }
}

我查看了 dsl,但找不到任何关于如何启动孤儿的文档。 谢谢

【问题讨论】:

    标签: jenkins groovy dsl


    【解决方案1】:

    应该这样做。

    build job: 'pipelineStep', propagate: false, wait: false

    【讨论】:

      【解决方案2】:
      stage{
          build job: 'pipelineStep', parameters: [string(name: 'xxx', value: xxx), string(name: 'yyy', value: yyy)],wait:false
      } 
      stage{
          build job: 'orphanStep', parameters: [string(name: 'xxx', value: xxx), string(name: 'yyy', value: yyy)],wait:false
      }
      

      仅供参考,当您提供wait = false 时,runwrapper 不会返回任何对象,因此您将无法获取与子作业相关的任何详细信息(pipelineSteporphanStep)。

      RunWrapper.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-12-17
        • 2021-02-01
        • 2019-12-18
        • 2018-07-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多