2017-08-22 46 views
1

JIRAのpython JIRAライブラリを使用してスプリントの開始日と終了日を取得する方法はありますか? jira.sprints(jira.boards()[<sequence number of the board of interest>].id)を使用して、私はjira.client.ResultListを利害ボード内のすべてのスプリントと共に得ることができます。リストは次のようになります。python JIRAライブラリを使用してJIRAスプリントの開始日と終了日を取得します

[<JIRA Sprint: name='LSD Sprint 1', id=1>, 
... 
<JIRA Sprint: name='LSD Sprint 14', id=14>] 

私は何とか私は、追加のデータにアクセスすることができ、そこから私にjira.resources.PropertyHolderを返しissue.fieldsに似たものを使用して、各スプリント、の開始日と終了日にアクセスしてもらえますか?試験のため

答えて

1

Iはjirashellpython-jira 1.0.10)、JIRA 6.3.11JIRA 7.2.3JIRA AGILE REST API v1.0を用います。私はjirashellに次のコードを実行しました:

dir(jira.sprints(jira.boards()[0].id)[0]) 

それはsprintオブジェクトのすべてのメソッドと属性表示します:あなたが見ることができるように、リストはstartDateまたはendDate属性が含まれていません

['AGILE_BASE_REST_PATH', 
'AGILE_BASE_URL', 
'AGILE_EXPERIMENTAL_REST_PATH', 
'GREENHOPPER_REST_PATH', 
'JIRA_BASE_URL', 
'_READABLE_IDS', 
'__class__', 
'__delattr__', 
'__dict__', 
'__doc__', 
'__format__', 
'__getattr__', 
'__getattribute__', 
'__hash__', 
'__init__', 
'__module__', 
'__new__', 
'__reduce__', 
'__reduce_ex__', 
'__repr__', 
'__setattr__', 
'__sizeof__', 
'__str__', 
'__subclasshook__', 
'__weakref__', 
'_base_url', 
'_default_headers', 
'_get_url', 
'_load', 
'_options', 
'_parse_raw', 
'_resource', 
'_session', 
'delete', 
'find', 
'id', 
'linkedPagesCount', 
'name', 
'raw', 
'self', 
'sequence', 
'state', 
'update'] 

を。それにもかかわらず、スプリントstartDate and endDate properties via JIRA REST APIのクイックグーグルでは、APIがそのようなプロパティをサポートしていることがわかりました。しかし、python-jiraは古いバージョンのJIRA AGILE REST APIを使用していました。たとえば、jira.sprints(jira.boards()[0].id)[0].selfを実行すると、https://[JIRA_URL]/rest/greenhopper/1.0/sprint/[ID]という結果が得られます(アジャイル/ 1.0はAPIがstartDateとendDateのプロパティをサポートしています)。また、python-jiraはメッセージOld private GreenHopper API is used, all parameters will be ignoredをスローします。

python-jiraを使用してstartDateendDateを使用することはできません。古いバージョンのJIRA AGILE APIが原因です。

0

python requestsライブラリを使用して、私の問題を回避する方法が見つかりました。ここではそれへのリンクは次のとおりです。そして、そのvalues -key含まれているすべての辞書がある

import requests 
jiraResponse  = requests.get('https://<YOUR ATLASSIAN DOMAIN>.atlassian.net/rest/agile/1.0/board/<BOARD ID OF INTEREST>/sprint', auth=(<YOUR JIRA CREDENTIALS>)) 
jiraResponseJSON = jiraResponse.json() 

jiraResponseJSONhttp://docs.python-requests.org/en/master/

私は興味のスプリントの開始日と終了日を取得するには、次のように使用しましたオブジェクトのリストの中で、'completeDate''endDate'、および'startDate'というキーを持つ、対象のボードに含まれるスプリント。 は、スプリントが実際に閉じられる前に明らかに利用可能になるのに対し、'completeDate'は、スプリントが閉じられるときにのみ利用可能になる。その状態はactiveからclosedに変わります。私が使用した何のため

例:

startDate = jiraResponseJSON['values'][<SPRINT NUMBER>]['startDate'][:10] 
endDate = jiraResponseJSON['values'][<SPRINT NUMBER>]['completeDate'][:10] 

スプリントの開始日と終了日を発見した、1は、その後、更なるなどのpython-JIRAクエリ内の変数としてそれらの両方を使用できます。

jira.search_issues('project=<YOUR PROJECT NAME> and issuetype=bug AND status changed to closed DURING ("' + startDate + '", "' + endDate + '")', maxResults=100)

関連する問題