-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathJiraIssues.py
54 lines (41 loc) · 1.25 KB
/
JiraIssues.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
from jira import JIRA
from jira.exceptions import JIRAError
from datetime import datetime
import Debug
jira = JIRA(r"http://issues.apache.org/jira")
def set_jira(path):
global jira
jira = JIRA(path)
def get_issues_list(jql):
# get issues relevant issues by jql
block_size = 100
block_num = 0
issues = []
try:
while True:
start_idx = block_num * block_size
more_issue = jira.search_issues(jql, start_idx, block_size)
if len(more_issue) > 0:
for issue in more_issue:
issues.append(issue)
else:
break
block_num += 1
if Debug.mode(): print("**issue list done")
return issues
except JIRAError:
if Debug.mode(): print("JIRA Connection ERROR!!!")
return []
def get_issue_id(issue):
return issue.key
def get_issue_summary(issue):
return issue.fields.summary
def get_issue_description(issue):
return issue.fields.description
def get_issue_status(issue):
return issue.fields.status.name
def get_issue_type(issue):
return issue.fields.issuetype.name
def get_issue_creation_date(issue):
long_time = str(issue.fields.created).replace('T', ' ')
return long_time[:19]