Python操作の一般的なメソッドの分析Jiraライブラリ

Jiraは完全なRESTfulAPIを提供します。APIインターフェイスを直接要求したくない場合は、PythonJiraライブラリを使用してJiraを操作できます。

JiraPythonドキュメント

インストール方法

pip install jira

認証

Jiraのアクセスは許可されています。Jiraプロジェクトにアクセスするときは、最初に認証する必要があります。JiraPythonライブラリには、次の3つの認証方法があります。

次のコードでは、認証にCookieを使用しています。

form jira import JIRA
jira = JIRA( 'http://jira。***。com/'、auth =( 'ユーザー名'、 'ログインパスワード')

返されたjiraオブジェクトはJiraで動作できます。主な操作は次のとおりです。

事業

jira.projects():すべてのプロジェクトのリストを表示する

jira.project( "プロジェクトのキー"):単一のプロジェクトを表示する

プロジェクトオブジェクトの主な属性とメソッドは次のとおりです。

print(jira.projects())#アクセス許可のあるすべてのプロジェクトのリストを印刷します
project = jira.project( 'プロジェクトのキー')
print(project.key, project.name, project.lead)

発行(発行)

問題はJiraの中核であり、Jiraのタスク、ユーザーストーリー、およびバグは本質的に問題です。

単一の問題オブジェクトは、jira.issue(「問題のキー」)から取得できます。問題の主な属性とメソッドは次のとおりです。

フィールドの構成(フィールド)

一般的な問題のフィールドの属性は、固定属性とカスタム属性に分けられます。カスタム属性の形式は、通常、customfield_10012と同様です。一般的に使用される質問のフィールドは次のとおりです。

例は次のとおりです。

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)

以上が本稿の内容ですので、皆様のご勉強に役立てていただければ幸いです。

Recommended Posts

Python操作の一般的なメソッドの分析Jiraライブラリ
Pythonマルチプロセスプログラミングの一般的な方法の分析
Pythonタートルライブラリ実装の基本的な分析
09.Python3の共通モジュール
wavファイルのPython分析
PythonクローラーのJSの分析
Pythonサンドボックスエスケープの分析
Pythonオブジェクト指向プログラミングの分析
Python共通モジュールのコレクション
Pythonイールドの使用例の分析
魔法の方法とPythonの使用
word2vec操作のPython予備実装
Pythonファイル操作の基本的なプロセス分析
pythonselenium操作cookieの実装
Python条件付き制御ステートメントの分析
Python関数のいくつかの一般的なモード
python操作redisのいくつかの例
Pythonモジュールの知識の完全な分析
pythonアクセスAlipayの操作例
python accesshdfsの操作
Windowsでのpython共通ライブラリのインストール
Pythonガベージコレクションメカニズムの詳細な分析
Pythonタイムモジュールの一般的な操作の概要
Python言語の本質:Itertoolsライブラリ
pythonインポートライブラリの特定の方法
Python Automation(20)| Python操作のいくつかの方法について話すPDF(マージ、分割、ウォーターマーク、暗号化)
C言語プログラムを呼び出すPythonのメソッド分析
python標準ライブラリOSモジュールの詳細な説明
pythonがコンカレントメソッドをサポートする方法の詳細な説明
AI自動マットサンプル分析のPython実装
Pythonで実装された特徴抽出操作の例
Python3.9の7つの機能
Pythonファイル操作
Pythonデータ分析
python操作kafka
Python描画|さまざまな台風経路の視覚化方法
Pythonプロセス制御の一般的なツールの詳細な説明