2017-06-06 31 views
1

我必須使用管道腳本多個詹金斯工作,我用同樣的方法對他們來說至少4使用通用的方法來詹金斯建立

def createJiraLinks(def ticketNumbers) { 
    ArrayList<String> jiraLinks = new ArrayList<String>(); 
    for(int i =0; i < ticketNumbers.size(); i++) { 
    def jira_json = sh script: """/usr/local/bin/curl -X GET -H "Content-Type: application/json" --cert-type PEM --key-type PEM -E /Users/Jenkins/.jenkins/workspace/certificates/cert.pem --key /Users/Jenkins/.jenkins/workspace/certificates/cert.pem https://jira.dev.org.co.uk:443/rest/api/2/issue/${ticketNumbers[i]}""", returnStdout: true 
    def json = jsonParse(jira_json); 
    def summary = json['fields']['summary'].toString(); 
    jiraLinks.add("[" + ticketNumbers[i] + "](https://jira.dev.org.co.uk/browse/" + ticketNumbers[i] + ")" + " - " + summary); 

    } 
    return jiraLinks; 
} 

我怎樣才能讓每個流水線作業進口這種方法,這樣,如果我需要更新一次,我可以做一次,這裏的關鍵部分是有能力使用sh script:好像我運行curl命令使用"String.execute()"命令失敗,因爲我無法正確格式化它

任何意見/提示appreaciated

謝謝

回答