通过 Python suds 在 JIRA 中创建问题时设置受让人字段

问题描述 投票:0回答:4

使用 JIRA 版本 4.2。使用 Python 2.7 和 suds 0.4,如何创建受让人字段集的问题?下面的代码中将忽略受让人字段。

new_issue = client.service.createIssue(auth, {
            'project': 'NAHLP',
            # issue_type = Incident Report.
            'type': '11',
            'assignee': 'assignee_username',
            'priority': '2',
            'summary': 'summary',
            'description': 'description',
            'customFieldValues': [
                # Reporter Location = NA.
                {'customfieldId':'customfield_10019', 'values':['10011']},
                ]
            })

我知道您可以与受让人更新问题(请参阅我的答案),但我想在创建问题时分配问题。这可能吗?

注意:我们所有的用户名都是用户的电子邮件地址,并包含“@”和“.”。符号。

python soap jira suds
4个回答
4
投票

感谢戴夫提供了与受让人更新问题的替代方案。请注意,这并不能回答创建问题时如何分配票证的问题。

我需要传递一个数组作为受让人字段的值,即使它只允许一个值。 (这同样适用于您想要使用 updateIssue 调用更新的任何字段)。所以,而不是:

client.service.updateIssue(auth, 'NAHLP-38630', {'assignee': '[email protected]',})

这样做:

client.service.updateIssue(auth,'NAHLP-38630',[ {'id' : 'assignee', 'values' : ['[email protected]']}])

1
投票

您应该能够创建问题并设置受让人。确保您使用的是用户名,而不是全名或电子邮件地址。检查 atlassian-jira.log 是否有错误。检查该项目中该问题类型的创建屏幕上是否隐藏了受让人。 JIRA Python CLI 有一个 createissues 操作,应该对 suds 执行此操作。

~马特


1
投票

再次感谢戴夫的回答。

soap API 不会在工作流程的相关点设置 Jira UI 屏幕上不可见的字段。当您调用 createIssue 方法时,“创建问题”屏幕被视为相关屏幕,但受让人字段在“创建问题”屏幕上不可见。

您可以在没有受让人的情况下执行 createissue 调用,然后使用 updateissue 调用来设置受让人。或者,我们可以在初始创建问题工作流程中添加受让人字段。


0
投票

将受让人作为字典传递,键作为名称,如下面的示例所示

issue_data = {   
    'project' : {'key':'project_id'},
    'summary' : 'Issue Creation using Automation Scription',
    'description' : 'Setting the description string',
    'issuetype' : {'name':'Bug'},
    'labels' : ['jiraAutomation','label'],
    'assignee': {'name':'jira_user_id'}
}

new_issue = jira.create_issue(fields=issue_data)
print(new_issue.key)
© www.soinside.com 2019 - 2024. All rights reserved.