如何克隆 JIRA 中的问题?

You*_*Ego 3 python-jira jira-rest-api

我想使用 Python 中的 REST API 克隆 JIRA 中的现有问题,但也想在克隆时更改项目和问题类型。我怎样才能做到这一点?

任何帮助深表感谢。

谢谢!

gui*_*o23 5

我不认为克隆是可用的端点,但是即使是,我也知道将问题“移动”到另一个项目和/或问题类型也不是端点。解决这个问题的方法是执行以下操作。

1:读入Jira票据的值并将您想要保留的重要字段存储为变量

2:向 Jira 发送请求以创建新票证并传入您想要保留的值,这些值可能是“摘要”、“描述”、“受让人”、“报告者”以及您使用的任何其他字段。

我使用 Jira 库来协助处理请求https://jira.readthedocs.io/en/master/

示例代码:

import configuration #.py file that I store my username/password/token/server domain
from jira import JIRA
    
# Initialize Jira
jira = JIRA(
    basic_auth=(configuration.JIRAProdUsername, configuration.JIRAProdToken),
    options = {'server':'https://'+configuration.JIRAProdDomain+'.atlassian.net'}
)
    
# Search for issues to be updated
issue_search_convert = jira.search_issues("SOME JQL FILTER THAT FINDS THE ISSUES YOU WANT TO CLONE", maxResults=75)

# Create New Jira Tickets
for key in issue_search_convert:
    issue = jira.issue(key)
    issue_description = issue.fields.description
    issue_summary = issue.fields.summary    
    jira_dict_convert = {
        'project': {'key': 'ITS'},
        'summary': issue_summary,
        'assignee': {'name': 'User1@example.com'},
        'reporter': {'name': 'User2@example.com'},
        'issuetype': {'name': 'NameOfIssueType'},
        'description': issue_description,
        'components': [{'name': 'Component'}],
        'customfield_12761': SomeCustomFieldValue
    }
    jira.create_issue(jira_dict_convert)
Run Code Online (Sandbox Code Playgroud)