我正在开发一个程序,该程序使用以下函数样式创建了一堆 jira 问题:
def issue_create():
url = "jira_url"
username = auth_name
password = auth_pwd
jira_inst = jira.JIRA(url, basic_auth=(username, password))
test = {
"project": {"key": "123"},
"issuetype": {"name": "Task"},
"summary": 'title',
"description": 'description' ,
"duedate": 'due_date'
"timetracking": {"originalEstimate": "1d"},
}
created = jira_inst.create_issues([test])
issue_create()
这对于创建我的所有问题(大约 15 个(非常有效,但是我已经尝试了许多方法将这些问题分配给不同的人,甚至将它们全部分配给我的 jira 上的 1 个人,但无论如何它给我各种错误消息,其中最常见的是:
http://localhost:8080/rest/api/latest/issue /[%7B'status':%20'Error',%20'error':%20%7B'duedate':%20'Error%20parsing%20date%20string:%20'%7D,%20'issue':%20None,%20'input_fields':%20%7B'project':%20%7B'key':%20'SAM'%7D,%20'issuetype':%20%7B'name':%20'Task'%7D,%20'summary':%20'Badges%20pour%20%20%20(Stagiaire%20)',%20'description':%20'Faire%20restituer%20le%20badge%20immeuble%20et%20parking%20de%20%20%20qui%20part%20le%20()',%20'duedate':%20'',%20'timetracking':%20%7B'originalEstimate':%20'1d'%7D%7D%7D]/assignee
关于如何解决此问题并分配这些问题的任何想法? 多谢
在JIRA中使用直接受让人的问题在于,如果在JIRA云中使用GDPR严格模式,则无法直接使用。但是,有两种选择。
备选案文1
a. 在没有受让人的情况下创建 JIRA 票证并存储 JIRA 票证 ID
b. 通过查询用户名获取用户 ID/rest/api/2/user/assignable/search?issueKey=SCRUM-37&query=yahandy
c. 使用上述 API 中的 JIRA 工单 ID 和用户 ID,如下所示
curl --request PUT
> --url 'https://[myCloudSite].atlassian.net/rest/api/2/issue/SCRUM-37'
> --header 'Authorization: Basic [username+tokenEncodedStringHere]'
> --header 'Content-Type: application/json'
> --data '{"fields":{"assignee": {"accountId":"123456:44448ae7-90ce-4e62-bfda-e88abcde5555"}}}'
参考: https://community.atlassian.com/t5/Jira-questions/Assignee-set-to-unassigned-while-creating-ticket-through-the/qaq-p/1310631
备选案文2
一种更简单的方法是使用 JIRA 提供的项目自动化工具。根据几个条件,可以将工单分配轮换给不同的人。这样,您就不必处理三个不同 REST API 调用的原子性问题,也不必将工作卸载到 JIRA。
参考: https://www.atlassian.com/software/jira/automation-template-library/auto-assign
尝试使用data
等字段作为您的请求:
{
"fields": {
"project": {
"key": "TIOHM"
},
"summary": "Testing Jira REST API with CURL",
"description": "test 123",
"issuetype": {
"name": "Task"
},
"assignee": {
"name": "a.fomina"
}
}
}
这是包含更多示例的文档。
通过 Python 泡沫在 JIRA 中创建问题时重复设置受让人字段。总之,无法在创建时完成。
尝试将任务分配对象添加到测试词典中。 例如:
test = {
"project": {"key": "123"},
"issuetype": {"name": "Task"},
"summary": 'title',
"description": 'description' ,
"duedate": 'due_date'
"timetracking": {"originalEstimate": "1d"},
"assignee": {"name": "jackburton"},
}