Python JIRA非必填字段在创建问题上被强制

时间:2019-02-28 16:00:01

标签: python jira jira-rest-api python-jira

使用jira python库并创建问题时,将在create_issue调用中强制使用非强制性字段。

对创建问题尝试的响应:

text: No issue link type with name 'Automated' found.

响应创建元调用以检查必填字段:

  

'hasDefaultValue':否,                                                                u'key':u'issuelinks',                                                                u'name':u'Linked Issues',                                                                u'operations':[u'add'],                                                                u'required':False,

2 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,经过一番挖掘,这就是我所做的。 打开一个jira并使用开发人员工具(F12),找出必需的自定义字段的ID。它们的名称应类似于“ customfield_10304”

一旦有了这些字段ID,就可以在创建问题时按照设置其他字段的方式使用它们。例如。

new_issue = jira.create_issue(project={'key': project},
                                  summary='{}'.format(summary),
                                  description='{}'.format(description),
                                  issuetype={'name': 'Bug'},
                                  labels=labels,
                                  versions=[{"name": affect_version[0]}],
                                  customfield_10304=[{"value": env}],
                                  customfield_10306=[{"value": customer}],
                                  priority={'name': priority})

答案 1 :(得分:0)

吉拉的行为很奇怪。 createmeta调用会返回所有可能的问题类型及其所有字段,以及哪个字段是必填字段。

但是即使在此之后,仍有某些必填字段,但createmeta不会告诉您这一点。您需要依赖在提交create_issue()之后收到的异常消息。

在异常消息中,exception_obj.response.text为您提供了具有所需精确字段的键/值的json。

然后,您可以在createmeta的响应中搜索有关其架构类型的信息,并且可以设置为allowedValues。 然后,再试一次。

基本上,您需要重试上述机制。