所以我的问题是JIRA API的Python库。我们正在使用JIRA作为资产管理数据库(是的,我知道开发人员通常会使用它,并且我们也使用它,但是在这种情况下,它工作得很好)来跟踪服务器配置(内存,CPU,位置机架..等)

使用此功能,我可以在项目下创建一个Issue并从另一个API提取字段信息。

(请注意,我无法提供有关我为谁工作的线索,因此可以对代码进行编辑-但是,当我添加一行时,所有这些工作都可以期待)

def create_compute_node_in_jira(自己,compute_node_name,用户名,密码,info_dic):
        help_obj = helper()
        吉拉= JIRA(“ https://”,basic_auth =(用户名,密码))

    #Uses a dic to create the fields / info for the Issue

    issue_dict = {
    'project': {'key': <project>},
    'summary': compute_node_name,
    'issuetype': {'name': 'Server Hardware'},
    'customfield_10500': str(info_dic["Hostname"]),
    'customfield_11007': {'value': str("2U")},
    'customfield_11006': str(info_dic["Aggr0-IP"]),
    'customfield_10510': {'value': str(7)},
    'customfield_10501': str(info_dic["Serial-Number"])
    'customfield_10502': {'value': str(<server>)},
    'customfield_10503': str(help_obj.data_parser_sm(info_dic["Hostname"])),
    'customfield_10509': {'value': str("<OS>")},
    'customfield_10504': {'value': str("<mem>")},
    'customfield_10505': str(help_obj.data_parser_cpu(info_dic["CpuType"])),
    'customfield_10507': {'value': str(info_dic["Cpu-Core"])},
    'customfield_10508': {'value': str(<OS Version>)},
    'customfield_11008': {'value': str("CMH")}
    }
    jira.create_issue(fields=issue_dict)
    return "[*]Created ticket" # Should exit script after this is returned


这行-'customfield_11008':{'value':str(“ CMH”)}-使函数返回以下期望值:

jira.utils.JIRAError:JiraError HTTP 400
    文字:选项ID“空”无效
    网址:https:/// rest / api / 2 / issue

但是,当我忽略该行时,它就不会出现问题。我尝试使用CMH小写字母-大写..etc ..,但它仍然破坏了脚本。我什至通过网络gui并将“ CMH”条目复制到另一张票证中,它仍然引起问题。有人之前曾见过此事吗/对它为何破裂有任何猜测吗?

最佳答案

因此,在与JIRA玩了一段时间之后,我发现这是我自己的错误。当您使用API​​向字段发布不了解的“值”时,似乎导致了该错误。一个示例是我使用了错误的自定义字段,而我要发布到的JIRA字段未设置为采用我正在使用的值。

关于python - JIRA API-Python库-Create_Issue-选项ID'null'无效,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28998853/

10-15 11:16