Jenkins Job Builder - 自动管道工作

时间:2016-06-28 20:28:31

标签: jenkins jenkins-job-builder

目前,在Jenkins Job Builder中,我可以通过发布者选项指定下游作业,如下所示:

- job-template:
    name: foo-one
    project-type: freestyle
    disabled: false
    ...
    publishers:
      - pipeline:
          project: foo-two

创建 foo-one 作业时,下游连接存在于Jenkins中,但构建其他项目条目是'构建其他项目(手动步骤)' 即可。如何通过Jenkins Job Builder指示工作 foo-two 的下游连接是否需要自动化?

2 个答案:

答案 0 :(得分:1)

无法弄清楚如何使用Jenkins Job Builder发布商/管道标记解决问题。所以,结束了:

  1. 在Jenkins中配置 foo-one 作业,以便在 foo-one 成功完成时启动 foo-two
  2. 通过以下方式检索 foo-one 作业的config.xml文件: curl -O http://localhost:8080/job/foo-one/config.xml
  3. 从控制下游启动逻辑的config.xml文件中提取相关的XML。
  4. 使用Jenkins Job Builder xml 发布商标记:

    - job-template:
        name: foo-one
        project-type: freestyle
        disabled: false
        ...
        publishers:
          - raw:
              xml: |
                <hudson.tasks.BuildTrigger>
                  <childProjects>foo-two</childProjects>
                  <threshold>
                    <name>SUCCESS</name>
                    <ordinal>0</ordinal>
                    <completeBuild>true</completeBuild>
                  </threshold>
                </hudson.tasks.BuildTrigger>
    

答案 1 :(得分:0)

尝试使用trigger-parameterized-builds来触发下游作业。

- job-template:
    name: foo-one
    project-type: freestyle
    disabled: false
    ...

    publishers:
      - trigger-parameterized-builds:
          - project: 'foo-two'
            condition: UNSTABLE_OR_BETTER
            fail-on-missing: true