使用Jenkins Jira Step插件创建JIRA工单 基础认证禁用后配置报错如何解决
Jira与Jenkins Jira Steps插件集成配置及报错解决方案
一、Jira端认证凭证准备
- 云版Jira:已禁用基础账号密码认证,需使用「Atlassian账号邮箱 + API令牌」作为认证凭证。API令牌可在Atlassian账号后台的安全设置板块生成,生成后仅展示一次,请妥善留存。
- 私有部署Jira:若禁用基础认证,优先使用个人访问令牌(PAT),可在Jira个人设置的「个人访问令牌」栏目按需配置有效期后生成。
二、Jenkins端插件全局配置
- 进入Jenkins「系统管理」-「全局配置」页面,找到Jira Steps插件的配置区块:
- Site Name 填写自定义站点标识,需与流水线中
JIRA_SITE环境变量的取值完全匹配,你当前代码中该变量值为Jira,此处需对应填写Jira。 - Jira URL 填写Jira服务根地址,不要携带多余的路径后缀,格式为
https://<你的Jira域名>/。 - 认证配置:
- 云版场景:认证类型选择「用户名密码」,用户名字段填Atlassian账号邮箱,密码字段填之前生成的API令牌,将该凭证存储到Jenkins凭证管理中。
- 私有部署PAT场景:认证类型选择「Bearer Token」,直接填入生成的个人访问令牌即可。
- 点击「测试连接」,确认连通性正常后保存配置。
- Site Name 填写自定义站点标识,需与流水线中
三、流水线代码调整
你当前代码未做异常捕获、也未补充必填字段校验逻辑,调整后代码如下:
node { stage('JIRA') { withEnv(['JIRA_SITE=Jira']) { // 调试阶段可保留该行,用于验证Jira站点配置是否生效 jiraGetServers() def testIssue = [fields: [ project: [key: 'AUT'], summary: 'Jenkins自动创建Bug工单', issuetype: [name: 'Bug'], // 需补充你所属Jira项目要求的所有必填字段,否则会触发字段校验报错 description: '该工单由Jenkins流水线自动生成' ]] try { def response = jiraNewIssue issue: testIssue, failOnError: true echo "工单创建成功:${response.data.key}" echo "返回结果:${response.data.toString()}" } catch (Exception e) { echo "创建失败,错误详情:${e.getMessage()}" currentBuild.result = 'FAILURE' } } } }
四、报错排查要点
- 401无权限报错:检查认证凭证是否正确,云版禁止直接使用账号密码,必须使用API令牌,同时确认使用的账号有对应Jira项目的工单创建权限。
- 403禁止访问报错:确认Jira安全策略未拦截Jenkins服务器的IP地址,确认账号没有被限制操作权限。
- 字段校验报错:检查
issuetype名称是否和Jira项目配置的工单类型名称完全一致,所有必填自定义字段是否都已在代码中补充。
内容的提问来源于stack exchange,提问作者Priya Jain
相关产品推荐
相关产品推荐

