如何从jenkins管道中的另一个作业获取最新的构建号

时间:2018-05-26 01:36:43

标签: jenkins jenkins-pipeline

我正在使用jenkins管道2.0,我想获得另一份工作的最新成功版本号。

使用什么管道语法?

4 个答案:

答案 0 :(得分:7)

你可以这样做

def buildNumber = Jenkins.instance.getItem('jobName').lastSuccessfulBuild.number

如果您获得RejectedAccessException,则必须批准这些方法,请参阅In-process Script Approval

答案 1 :(得分:2)

要添加到Vitalii的答案中,以防万一,您使用的是Multibranch Pipeline插件:

public class myDto {

    private String requestId;
    private List<Dogs> dogs;

}

答案 2 :(得分:1)

在企业环境中获得批准非常烦人(许多请求和批准) 所以我使用以下API方式获取最新的内部版本号。

import groovy.json.JsonSlurperClassic
httpRequest url: 'https://jenkinsurl.local/job/Build/api/json', outputFile: 'output.json'

def jsonFile = readFile(file: 'output.json')
def data = new JsonSlurperClassic().parseText(jsonFile)
latestBuildNumber = "${data.lastSuccessfulBuild.number}"

答案 3 :(得分:0)

deleteTodoList (id) {
      axios
        .post('/deleteTodoList', {
          id: id
        })
        .then(res => {
          if (res.status === 404) {
            console.error('Todolist Does Not Exist')
            console.log(res)
          }
          if (res.status === 200) {
            console.log('Todolist Deleted')
            console.log(res)
          }
        })
        .catch(err => {
          console.log(err)
        })
    }