-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathJIRAframework.py
More file actions
80 lines (60 loc) · 1.84 KB
/
JIRAframework.py
File metadata and controls
80 lines (60 loc) · 1.84 KB
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
import json
import pickle
import requests
def getUsername():
file_name = "config"
return_val = ''
try:
file_object = open(file_name, 'rb')
c = pickle.load(file_object)
return_val = c['username']
except:
pass
return return_val
def getPassword():
file_name = "config"
return_val = ''
try:
file_object = open(file_name, 'rb')
c = pickle.load(file_object)
return_val = c['password']
except:
pass
return return_val
def getURL():
file_name = "config"
return_val = ''
try:
file_object = open(file_name, 'rb')
c = pickle.load(file_object)
return_val = c['URL']
except:
pass
return return_val
def getsessionURL():
file_name = "config"
return_val = ''
try:
file_object = open(file_name, 'rb')
c = pickle.load(file_object)
return_val = c['sessionURL']
except:
pass
return return_val
class jirasession(requests.Session):
def __init__(self, sessionurl, username, password):
super().__init__()
self.verify = False # because I don't have a verified cert
self.get(sessionurl, auth=(username, password)) # need to use encrypted auth
def issue(self, url, key):
url = url + '/issue/{0}'.format(key)
session_response = self.get(url)
if session_response.status_code != 200:
raise Exception(session_response.status_code)
return json.loads(session_response.text)
def query(self, url, jql, fields, maxresults):
url = url + '/search?jql={0}&fields={1}&maxResults={2}'.format(jql, fields, maxresults)
session_response = self.get(url)
if session_response.status_code != 200:
raise Exception(session_response.status_code)
return json.loads(session_response.text)