使用Python创建Jira Issue失败,请求协助排查代码问题
排查Python创建JIRA Issue失败的问题
我帮你梳理代码里的几个明显问题,一个个来修正:
1. JIRA选项格式错误
你的jira_options被定义成了集合,而JIRA库要求它是包含server键的字典,另外还写错了公司域名的拼写(mycomapny → mycompany)。正确写法应该是:
jira_options = {'server': 'http://ontrack-internal.mycompany.com'}
2. 项目Key使用错误
你写的"SSET QA OPS (SSETOPS)"是项目的显示名称,JIRA创建Issue时需要的是项目的短Key(也就是括号里的SSETOPS)。所以项目参数应该改成:
project={"key": "SSETOPS"}
3. Issue类型名称可能不匹配
JIRA里的Issue类型名称通常是首字母大写的,比如"Task"而不是"task",你需要确认你的JIRA实例里实际的任务类型名称是什么(可以在JIRA的项目设置里查看)。如果确实是小写的task可以保留,否则改成对应正确的名称。
修正后的完整代码示例
from jira.client import JIRA # 修正选项格式和域名拼写 jira_options = {'server': 'http://ontrack-internal.mycompany.com'} # 初始化JIRA客户端 jira = JIRA(options=jira_options, basic_auth=("user", "pass")) # 使用正确的项目Key和Issue类型名称 new_issue = jira.create_issue( project={"key": "SSETOPS"}, summary="k-+s", description="please look into this", issuetype={"name": "Task"} )
如果还是失败,建议加个异常捕获来查看具体报错信息,方便进一步排查:
try: new_issue = jira.create_issue(...) print(f"Issue created successfully: {new_issue.key}") except Exception as e: print(f"Error creating issue: {str(e)}")
这样能拿到更具体的问题提示,比如权限不足、项目Key不存在等。
内容的提问来源于stack exchange,提问作者user3254437




