java - 使用 Jenkins 构建的常用方法

标签 java json jenkins groovy

我有多个使用管道脚本的 Jenkins 作业,并且我对其中至少 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: 作为如果我使用“String.execute()”运行curl命令,该命令将失败,因为我无法正确格式化它

任何建议/提示表示赞赏

谢谢

最佳答案

关于java - 使用 Jenkins 构建的常用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44391836/

相关文章:

java - 是否可以从 Java Applet 获取数据到 PHP 或 MySQL?

java - 在 Java 中强制用户填充 varargs 参数的好方法

java - 为什么我不能使用带有通配符的多个类型参数?

ios - WAXSIM 使用 Jenkins 和 xcodebuild 自动测试和构建

Jenkins Pipeline 中的 PowerShell 环境变量给出 `org.jenkinsci.plugins.workflow.cps.EnvActionImpl@1b69f5bb:VARIABLE_NAME`

git submodule update --init 给出 fatal error : Needed a single revision Unable to find current revision in submodule path

java - 运行 Netbeans 6.8 应用程序时出现 NoClassDefFoundError

json - 如何在 jMeter 中使用 JSONSchema 验证 JSON 数据

javascript - 从不同级别的对象中按属性名称获取值

JavaScript - 2D 数组/对象