使用Python Jira API创建问题链接时typestr该如何配置?
关于
create_issue_link接口typestr参数的说明 参数需要传入的值
typestr需要传入你当前使用的Jira实例中已存在的问题链接类型的名称(严格区分大小写),这个值不是Python Jira库固定写死的,因为Jira支持管理员自定义新增、修改、删除问题链接类型,不同站点的可用值不一定一致。
Jira自带的默认链接类型通常有这几个,仅作参考,不能保证你的实例一定能用:
Blocks:阻塞关系Cloners:克隆关系Duplicate:重复问题关系Relates:普通关联关系
可用链接类型的获取方式
有两种常用方式可以拿到正确的传值:
- 代码接口查询(最准确)
直接调用Jira连接实例的issue_link_types()方法,就能拉取到当前实例所有可用的链接类型,直接取返回对象的name字段作为typestr传参即可,示例代码:# 查询所有可用的问题链接类型 all_link_types = jira_conn.issue_link_types() for link_type in all_link_types: # 打印出来的name就是typestr需要传入的值 print(f"类型名: {link_type.name}, 向内关系描述: {link_type.inward}, 向外关系描述: {link_type.outward}") - 页面查看
如果你有Jira管理员权限,可以进入后台「问题配置-问题链接」页面查看所有已配置的链接类型名称;普通用户可以在手动给问题添加链接的操作页,下拉选择框里的选项就是可用的链接类型名。
传参规则注意事项
- 传入的类型名必须和查询到的
name字段完全一致,大小写、空格都不能有差异,否则会报链接类型不存在的错误。 - 要注意链接方向和
inwardIssue、outwardIssue参数的匹配:每个链接类型都有对应的向内描述(inward)和向外描述(outward),比如Blocks类型的向外描述是"blocks",向内描述是"is blocked by",如果传参为create_issue_link('Blocks', inwardIssue='ABC-2', outwardIssue='ABC-1'),最终页面显示的关系就是「ABC-1 阻塞 ABC-2,ABC-2 被ABC-1阻塞」,如果两个issue传反了,关系方向也会反过来。 - 你给出的示例代码里
outwardIssue='CSV-2'应该是笔误,和前面创建的ABC项目issue不匹配,实际使用时替换成正确的issue编号即可。
正确调用示例:
# 给ABC-1和ABC-2创建普通关联关系 jira_conn.create_issue_link('Relates', inwardIssue='ABC-1', outwardIssue='ABC-2')
内容的提问来源于stack exchange,提问作者stevosn
相关产品推荐
相关产品推荐

