Jira提供了完善的RESTful API,如果不想直接请求API接口可以使用Python的Jira库来操作Jira
Jira Python文档
安装方法
pip install jira
认证
Jira的访问是有权限的,在访问Jira项目时首先要进行认证,Jira Python库提供了3种认证方式:
认证方式只需要选择一种即可,以下代码为使用Cookies方式认证。
form jira import JIRA
jira = JIRA('http://jira.***.com/', auth=('用户名', '登录密码')
返回的jira对象便可以对Jira进行操作。主要的操作包括:
项目(Project)
jira.projects(): 查看所有项目列表
jira.project("项目的Key"): 查看单个项目
项目对象的主要属性及方法如下:
示例
print(jira.projects()) # 打印所有你有权限访问的项目列表
project = jira.project('某个项目的Key')
print(project.key, project.name, project.lead)
问题(Issue)
Issue是Jira的核心,Jira中的任务,用户Story,Bug实质上都是一个Issue。
单个问题对象可以通过jira.issue("问题的Key")得到,问题的主要属性和方法如下:
配置域(Fields)
一般问题的ields中的属性分为固定属性和自定义属性,自定义属性格式一般为类似customfield_10012这种。常用的问题的Fields有:
示例如下:
issue = jira.issue('JRA-1330')
print(issue.key, issue.fields.summary, issue.fields.status)
关注者/评论/附件
示例如下:
issue = jira.issue('JRA-1330') print(jiaa.watchers(issue)) # 所有关注者 jira.add_watcher(issue, 'username') # 添加关注者 print(jira.comments(issue)) # 所有评论 comment = jira.comment(issue, '10234') # 某条评论 jira.add_comment(issue, 'new comment') # 新增评论 comment.update(body='update comment') # 更新评论 comment.delete() # 删除该评论 print(issue.fields.attachment) # 问题附件 jira.add_attachment(issue=issue, attachment='/some/path/attachment.txt') # 添加附件
创建/分配/转换问题
示例如下:
# 创建问题 issue_dict = { 'project': {'id': 123}, 'summary': 'New issue from jira-python', 'description': 'Look into this one', 'issuetype': {'name': 'Bug'}, } new_issue = jira.create_issue(fields=issue_dict) # 批量创建问题 issue_list = [ { 'project': {'id': 123}, 'summary': 'First issue of many', 'description': 'Look into this one', 'issuetype': {'name': 'Bug'}, }, { 'project': {'key': 'FOO'}, 'summary': 'Second issue', 'description': 'Another one', 'issuetype': {'name': 'Bug'}, }, { 'project': {'name': 'Bar'}, 'summary': 'Last issue', 'description': 'Final issue of batch.', 'issuetype': {'name': 'Bug'}, }] issues = jira.create_issues(field_list=issue_list) # 分配问题 jira.assign_issue(issue, 'newassignee') # 转换问题 jira.transition_issue(issue, '5', assignee={'name': 'pm_user'}, resolution={'id': '3'})
搜索
Jira的搜索非常强大,并配有一套专门的搜索语言,称为JQL(Jira Query Language),Jira的Python库便是基于JQL语法进行搜索的,返回的是搜索到的问题列表。
使用语句为
jira.search_issues('JQL语句')
默认最大结果数未1000,可以通过maxResults参数配置,该参数为-1时不限制数量,返回所有搜索结果。
jira.search_issues('project=PROJ and assignee = currentUser()', maxResults=-1)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍Python操作mongodb数据库的方法详解,包括了Python操作mongodb数据库的方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python操作mongodb数据库的方法。分享给大家供大家参考,具体如下: 安装pymongo 下载pymongo: https://pypi.python.org/packages/82/26/f45f95841de5164c
1. 前言 本节课程聊聊如何使用 Session 完成基本数据操作。通过本课程,你将学习到: 如何实现查询; 如何实现保存和更新。 2. 基本数据操作方法 Session 中提供了很多方法,协助开发者快速完成基本的增加、删除、修改、查询(CRUD) 等基本数据操作。 2.1 查询 Session 提供了 2 个语义很明确的查询方法: get() 方法; load() 方法。 有选择,就会有比较。但
本文向大家介绍Python 解析pymysql模块操作数据库的方法,包括了Python 解析pymysql模块操作数据库的方法的使用技巧和注意事项,需要的朋友参考一下 pymysql 是 python 用来操作MySQL的第三方库,下面具体介绍和使用该库的基本方法。 1.建立数据库连接 通过 connect 函数中 parameter 参数 建立连接,连接成功返回Connection对象 pymy
本文向大家介绍Python操作MongoDB数据库PyMongo库使用方法,包括了Python操作MongoDB数据库PyMongo库使用方法的使用技巧和注意事项,需要的朋友参考一下 引用PyMongo 创建连接Connection 或 创建Connection时,指定host及port参数 连接数据库 或 连接聚集 或 查看全部聚集名称 查看聚集的一条记录 查看聚集的字段 查
本文向大家介绍Python之str操作方法(详解),包括了Python之str操作方法(详解)的使用技巧和注意事项,需要的朋友参考一下 1. str.format():使用“{}”占位符格式化字符串(占位符中的索引号形式和键值对形式可以混合使用)。 2. 使用“%”进行字符串格式化。 格式化符号表 %c 转为单字符 %r 转为用repr()表达的字符串 %s 转为用str()表达的字符串 %d
本文向大家介绍Python使用py2neo操作图数据库neo4j的方法详解,包括了Python使用py2neo操作图数据库neo4j的方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python使用py2neo操作图数据库neo4j的方法。分享给大家供大家参考,具体如下: 1、概念 图:数据结构中的图由节点和其之间的边组成。节点表示一个实体,边表示实体之间的联系。 图数据库:以图的