zoukankan      html  css  js  c++  java
  • jira python操作,自动创建问题

    jira web api地址
    http://jira.**.com/plugins/servlet/restbrowser

    http://jira.**.com/rest/api/2/issue/createmeta?projectKeys=PT&issuetypeNames=Bug&expand=projects.issuetypes.fields
    1、查看project创建bug提交的参数情况,true说明是必填

    2、对于type是array的字段,提交时候报错“data was not an array”,困扰许久,翻墙后找到答案:

     写法: 'customfield_10449': [{'name': "1.0.0"}]

    https://community.atlassian.com/t5/Answers-Developer-Questions/How-to-add-component-while-creating-an-issue-via-JIRA-REST-API/qaq-p/493660

     简单版

    
    
    # !/usr/bin/python
    # -*- coding:utf-8 -*-
    from jira import JIRA
    import sys, getopt, redis, os
    
    
    class JiraTool:
        def __init__(self):
            self.server = 'http://jira.**.com'
            self.basic_auth = ('username', 'passwd#')
            self.jiraClinet = None
    
        @property
        def login(self):
            self.jiraClinet = JIRA(server=self.server, basic_auth=self.basic_auth)
            # issue = self.jiraClinet.issue("PT-358")
            # self.jiraClinet.add_comment(issue, "test")
    
            if self.jiraClinet != None:
                return True
            else:
                return False
    
        def findIssueById(self, issueId):
            if issueId:
                if self.jiraClinet == None:
                    self.login
                return self.jiraClinet.issue(issueId)
            else:
                return 'Please input your issueId'
    
        def createIssue(self, summary, description, id='3'):
    
            issue_dict = {
    
                'project': {'key': "project"},
                'issuetype': {'name': 'Bug'},
                'summary': summary,
                'description': description,
                'priority': {'id': id},
                # 'customfield_10449': array('1.0.0')
                'customfield_10449': [{'name': "1.0.0"}]
            }
            if self.jiraClinet == None:
                self.login
            return self.jiraClinet.create_issue(issue_dict)
    
    
    if __name__ == '__main__':
        jiraTool = JiraTool()
        jiraTool.login
        jiraTool.createIssue("测试自动提交bug","bug描述")
  • 相关阅读:
    LeetCode-389-找不同
    xml配置与使用
    curl使用
    php中JPGraph入门配置与应用
    php开发通用采集程序
    adodb配置与使用
    swfupload上传
    ZendFramework使用中常见问题
    memcache配置与使用
    第四章 供给与需求的市场力量
  • 原文地址:https://www.cnblogs.com/paisen/p/8529365.html
Copyright © 2011-2022 走看看