我使用管道脚本有多个Jenkins作业,我至少使用相同的方法
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:
,就好像我使用 "String.execute()"
运行the the the the the the the the the the the the the the curl命令该命令失败,因为我无法正确格式化它
任何建议/提示批准
谢谢
请参阅与共享库扩展时的详细说明。