You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Jenkins Pipeline使用Jira插件更新Jira默认字段(如Fix versions)

Jenkins Pipeline更新Jira默认字段(以Fix versions为例)

已知你已配置好Jira Plugin并能执行基础查询,要通过Pipeline更新指定Issue的默认字段(比如Fix versions),可以使用JIRA Pipeline Steps插件提供的jiraEditIssue步骤,以下是具体实现:

完整Pipeline示例

pipeline {
   agent any
   stages {
      stage('Update Jira Issue') {
         steps {
            script {
               // 直接通过IssueKey更新Fix versions(替换为你的实际信息)
               jiraEditIssue(
                  issueKey: 'PROJ-123', // 替换成目标Issue的Key
                  fields: [
                     fixVersions: [
                        [name: '1.0.0'] // 填入要设置的版本名称,也可以用[id: '版本ID']
                     ]
                  ]
               )

               // 可选:如果需要基于现有Fix versions追加新版本
               // def targetIssue = jiraSearch(jql: "key = 'PROJ-123'")
               // def updatedVersions = targetIssue.fields.fixVersions ?: []
               // updatedVersions.add([name: '1.0.0'])
               // jiraEditIssue(
               //    issueKey: targetIssue.key,
               //    fields: [fixVersions: updatedVersions]
               // )
            }
         }
      }
   }
}

关键说明

  • 核心步骤jiraEditIssue:这是JIRA Pipeline Steps插件提供的编辑Issue方法,支持修改Jira的标准字段和自定义字段。
  • Fix versions参数格式:由于Fix versions是多值字段,需要传入包含版本对象的数组。可以通过name(版本名称)或id(版本ID)指定版本,两种方式二选一即可。
  • 字段名对应规则:要使用Jira REST API的标准字段名(驼峰式),比如:
    • Summary对应summary
    • Assignee对应assignee(格式为[name: '用户名']或[accountId: '用户ID'])
    • Priority对应priority(格式为[name: 'High']或[id: '优先级ID'])
  • 权限验证:确保Jenkins配置的Jira凭证拥有修改该Issue的权限,否则会执行失败。

常见场景扩展

  • 清空Fix versions:将fixVersions设为空数组[]即可。
  • 同时修改多个字段:在fields中添加多个键值对,比如:
    fields: [
       fixVersions: [[name: '1.0.0']],
       summary: '更新后的Issue标题',
       assignee: [name: 'dev-user']
    ]
    

内容的提问来源于stack exchange,提问作者Izaya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 09:10:23