Skip to content

Commit b931477

Browse files
committed
PYAPI-26 PEP8
1 parent e698ef9 commit b931477

16 files changed

+184
-171
lines changed

MANIFEST.in

Whitespace-only changes.

PKG-INFO

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Metadata-Version: 1.1
22
Name: atlassian-python-api
3-
Version: 0.7.1
3+
Version: 0.7.10
44
Author: Matt Harasymczuk
55
Author-email: code at mattagile com
66
Maintainer: Matt Harasymczuk

atlassian/__init__.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
import logging
33
import requests
44

5-
65
log = logging.getLogger("atlassian")
76

87

@@ -23,7 +22,8 @@ def log_curl_debug(self, method, path, headers={}, data=None, level=logging.DEBU
2322
url='{0}{1}'.format(self.url, path))
2423
log.log(level=level, msg=message)
2524

26-
def request(self, method='GET', path='/', headers={'Content-Type': 'application/json', 'Accept': 'application/json'}, data=None):
25+
def request(self, method='GET', path='/',
26+
headers={'Content-Type': 'application/json', 'Accept': 'application/json'}, data=None):
2727
self.log_curl_debug(method, path, headers, data)
2828
response = requests.request(
2929
method=method,
@@ -35,8 +35,9 @@ def request(self, method='GET', path='/', headers={'Content-Type': 'application/
3535
if response.status_code != 200:
3636
self.log_curl_debug(method, path, headers, data, level=logging.WARNING)
3737
log.warning(response.json())
38-
response.raise_for_status()
39-
log.debug('Received: {0}'.format(response.json()))
38+
response.raise_for_status()
39+
else:
40+
log.debug('Received: {0}'.format(response.json()))
4041
return response
4142

4243
def get(self, path, headers={'Content-Type': 'application/json', 'Accept': 'application/json'}):
@@ -56,3 +57,5 @@ def delete(self, path, headers={'Content-Type': 'application/json', 'Accept': 'a
5657
from .jira import Jira
5758
from .stash import Stash
5859
from .portfolio import Portfolio
60+
61+
__all__ = ['Confluence', 'Jira', 'Stash', 'Portfolio']

atlassian/confluence.py

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,32 @@
22
from atlassian import AtlassianRestAPI
33

44

5-
log = logging.getLogger("atlassian.confluence")
5+
log = logging.getLogger('atlassian.confluence')
66

77

88
class Confluence(AtlassianRestAPI):
99

1010
def create_page(self, space, parent_id, title, body):
11-
return self.post("/rest/api/content/", data={
12-
"type": "page",
13-
"ancestors": [{"type": "page", "id": parent_id}],
14-
"title": title,
15-
"space": {"key": space},
16-
"body": {"storage": {
17-
"value": body,
18-
"representation": "storage"}}})
11+
return self.post('/rest/api/content/', data={
12+
'type': 'page',
13+
'ancestors': [{'type': 'page', 'id': parent_id}],
14+
'title': title,
15+
'space': {'key': space},
16+
'body': {'storage': {
17+
'value': body,
18+
'representation': 'storage'}}})
1919

2020
def history(self, page_id):
21-
return self.get("/rest/api/content/{0}/history".format(page_id))
21+
return self.get('/rest/api/content/{0}/history'.format(page_id))
2222

23-
def update_page(self, parent_id, page_id, title, body, type="page",):
24-
version = self.history(page_id)["lastUpdated"]["number"] + 1
25-
return self.put("/rest/api/content/{0}".format(page_id), data={
26-
"id": page_id,
27-
"type": type,
28-
"ancestors": [{"type": "page", "id": parent_id}],
29-
"title": title,
30-
"body": {"storage": {
31-
"value": body,
32-
"representation": "storage"}},
33-
"version": {"number": version}})
23+
def update_page(self, parent_id, page_id, title, body, type='page',):
24+
version = self.history(page_id)['lastUpdated']['number'] + 1
25+
return self.put('/rest/api/content/{0}'.format(page_id), data={
26+
'id': page_id,
27+
'type': type,
28+
'ancestors': [{'type': 'page', 'id': parent_id}],
29+
'title': title,
30+
'body': {'storage': {
31+
'value': body,
32+
'representation': 'storage'}},
33+
'version': {'number': version}})

atlassian/jira.py

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,49 +2,49 @@
22
from atlassian import AtlassianRestAPI
33

44

5-
log = logging.getLogger("atlassian.jira")
5+
log = logging.getLogger('atlassian.jira')
66

77

88
class Jira(AtlassianRestAPI):
99

1010
def reindex_status(self):
11-
return self.get("/rest/api/2/reindex")
11+
return self.get('/rest/api/2/reindex')
1212

1313
def reindex(self):
14-
return self.post("/rest/api/2/reindex")
14+
return self.post('/rest/api/2/reindex')
1515

16-
def jql(self, jql):
17-
return self.get("/rest/api/2/search?jql={0}&maxResults=999999".format(jql))
16+
def jql(self, jql, maxresults=999999):
17+
return self.get('/rest/api/2/search?jql={0}&maxResults={1}'.format(jql, maxresults))
1818

1919
def projects(self):
20-
return self.get("/rest/api/2/project")
20+
return self.get('/rest/api/2/project')
2121

2222
def user(self, username):
23-
return self.get("/rest/api/2/user?username=%s" % username)
23+
return self.get('/rest/api/2/user?username={0}'.format(username))
2424

2525
def project(self, key):
26-
return self.get("/rest/api/2/project/{0}".format(key))
26+
return self.get('/rest/api/2/project/{0}'.format(key))
2727

2828
def issue(self, key):
29-
return self.get("/rest/api/2/issue/{0}".format(key))
29+
return self.get('/rest/api/2/issue/{0}'.format(key))
3030

3131
def update_issue_field(self, key, fields):
32-
return self.put("/rest/api/2/issue/{0}".format(key), data={"fields": fields})
32+
return self.put('/rest/api/2/issue/{0}'.format(key), data={'fields': fields})
3333

3434
def project_leaders(self):
3535
for project in self.projects():
36-
key = project["key"]
36+
key = project['key']
3737
project_data = self.project(key)
38-
lead = self.user(project_data["lead"]["key"])
38+
lead = self.user(project_data['lead']['key'])
3939
yield {
40-
"project_key": key,
41-
"project_name": project["name"],
42-
"lead_name": lead["displayName"],
43-
"lead_key": lead["key"],
44-
"lead_email": lead["emailAddress"]}
40+
'project_key': key,
41+
'project_name': project['name'],
42+
'lead_name': lead['displayName'],
43+
'lead_key': lead['key'],
44+
'lead_email': lead['emailAddress']}
4545

4646
def rename_sprint(self, sprint_id, name, start_date, end_date):
47-
return self.put("/rest/greenhopper/1.0/sprint/{0}".format(sprint_id), data={
48-
"name": name,
49-
"startDate": start_date,
50-
"endDate": end_date})
47+
return self.put('/rest/greenhopper/1.0/sprint/{0}'.format(sprint_id), data={
48+
'name': name,
49+
'startDate': start_date,
50+
'endDate': end_date})

atlassian/portfolio.py

Lines changed: 31 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,43 +2,48 @@
22
from atlassian import AtlassianRestAPI
33

44

5-
log = logging.getLogger("atlassian.portfolio")
5+
log = logging.getLogger('atlassian.portfolio')
66

77

88
class Portfolio(AtlassianRestAPI):
9-
10-
def plan(self, portfolio_id):
11-
return self.get('/rest/roadmap/1.0/plans/{0}.json'.format(portfolio_id))
129

13-
def stages(self, portfolio_id):
14-
return self.get('/rest/roadmap/1.0/plans/{0}/stages.json'.format(portfolio_id))
10+
def plan(self, plan_id):
11+
return self.get('/rest/roadmap/1.0/plans/{0}.json'.format(plan_id))
1512

16-
def teams(self, portfolio_id):
17-
return self.get('/rest/roadmap/1.0/plans/{0}/teams.json'.format(portfolio_id))
13+
def stages(self, plan_id):
14+
return self.get('/rest/roadmap/1.0/plans/{0}/stages.json'.format(plan_id))
1815

19-
def config(self, portfolio_id):
20-
return self.get('/rest/roadmap/1.0/plans/{0}/config.json'.format(portfolio_id))
16+
def teams(self, plan_id):
17+
return self.get('/rest/roadmap/1.0/plans/{0}/teams.json'.format(plan_id))
2118

22-
def persons(self, portfolio_id):
23-
return self.get('/rest/roadmap/1.0/plans/{0}/persons.json'.format(portfolio_id))
19+
def config(self, plan_id):
20+
return self.get('/rest/roadmap/1.0/plans/{0}/config.json'.format(plan_id))
2421

25-
def streams(self, portfolio_id):
26-
return self.get('/rest/roadmap/1.0/plans/{0}/streams.json'.format(portfolio_id))
22+
def persons(self, plan_id):
23+
return self.get('/rest/roadmap/1.0/plans/{0}/persons.json'.format(plan_id))
2724

28-
def releases(self, portfolio_id):
29-
return self.streams(portfolio_id)
25+
def streams(self, plan_id):
26+
return self.get('/rest/roadmap/1.0/plans/{0}/streams.json'.format(plan_id))
3027

31-
def themes(self, portfolio_id):
32-
return self.get('/rest/roadmap/1.0/plans/{0}/themes.json'.format(portfolio_id))
28+
def releases(self, plan_id):
29+
return self.streams(plan_id)
3330

34-
def state(self, portfolio_id, plan_version):
35-
return self.get('/rest/roadmap/1.0/scheduling/{0}/state.json?planVersion={1}'.format(portfolio_id, plan_version))
31+
def themes(self, plan_id):
32+
return self.get('/rest/roadmap/1.0/plans/{0}/themes.json'.format(plan_id))
3633

37-
def filter(self, portfolio_id, plan_version):
38-
return self.get('/rest/roadmap/1.0/plans/{0}/workitems/filter.json?planVersion={1}'.format(portfolio_id, plan_version))
34+
def state(self, plan_id, plan_version):
35+
return self.get('/rest/roadmap/1.0/scheduling/{0}/state.json?planVersion={1}'.format(plan_id, plan_version))
3936

40-
def stage_name(self, portfolio_id, stage_id):
41-
return [stage['title'] for stage in self.stages(portfolio_id)['collection'] if stage['id'] == str(stage_id)][0]
37+
def filter(self, plan_id, plan_version, limit=500):
38+
url = '/rest/roadmap/1.0/plans/{0}/workitems/filter.json?planVersion={1}'.format(plan_id, plan_version)
39+
return self.post(url, data={'limit': limit})
4240

43-
def estimates_dict(self, portfolio_id, estimates):
44-
return {self.stage_name(portfolio_id, stage['targetId']): stage['value'] for stage in estimates['stages']}
41+
def dependencies(self, workitem_id, plan_version):
42+
url = '/rest/roadmap/1.0/workitems/{0}/dependencies.json?planVersion={1}'.format(workitem_id, plan_version)
43+
return self.get(url)
44+
45+
def stage_name(self, plan_id, stage_id):
46+
return [stage['title'] for stage in self.stages(plan_id)['collection'] if stage['id'] == str(stage_id)][0]
47+
48+
def estimates_dict(self, plan_id, estimates):
49+
return {self.stage_name(plan_id, stage['targetId']): stage['value'] for stage in estimates['stages']}

atlassian/stash.py

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from atlassian import AtlassianRestAPI
33

44

5-
log = logging.getLogger("atlassian.stash")
5+
log = logging.getLogger('atlassian.stash')
66

77

88
class Stash(AtlassianRestAPI):
@@ -11,20 +11,21 @@ def project_list(self):
1111
return self.get('/rest/api/1.0/projects')['values']
1212

1313
def project(self, key):
14-
return self.get('/rest/api/1.0/projects/{}'.format(key))['values']
14+
return self.get('/rest/api/1.0/projects/{0}'.format(key))['values']
1515

16-
def project_users(self, key):
17-
return self.get('/rest/api/1.0/projects/{}/permissions/users?limit=99999'.format(key))['values']
16+
def project_users(self, key, limit=99999):
17+
return self.get('/rest/api/1.0/projects/{0}/permissions/users?limit={1}'.format(key, limit))['values']
1818

1919
def project_users_with_administrator_permissions(self, key):
20-
project_administrators = [user['user'] for user in self.project_users(key) if user['permission'] == 'PROJECT_ADMIN']
20+
project_administrators = [user['user'] for user in self.project_users(key)
21+
if user['permission'] == 'PROJECT_ADMIN']
2122
for group in self.project_groups_with_administrator_permissions(key):
2223
for user in self.group_members(group):
2324
project_administrators.append(user)
2425
return project_administrators
2526

26-
def project_groups(self, key):
27-
return self.get('/rest/api/1.0/projects/{}/permissions/groups?limit=99999'.format(key))['values']
27+
def project_groups(self, key, limit=99999):
28+
return self.get('/rest/api/1.0/projects/{0}/permissions/groups?limit={1}'.format(key, limit))['values']
2829

2930
def project_groups_with_administrator_permissions(self, key):
3031
return [group['group']['name'] for group in self.project_groups(key) if group['permission'] == 'PROJECT_ADMIN']
@@ -36,13 +37,14 @@ def project_summary(self, key):
3637
'users': self.project_users(key),
3738
'groups': self.project_groups(key)}
3839

39-
def group_members(self, group):
40-
return self.get('/rest/api/1.0/admin/groups/more-members?context={}&limit=99999'.format(group))['values']
40+
def group_members(self, group, limit=99999):
41+
return self.get('/rest/api/1.0/admin/groups/more-members?context={0}&limit={1}'.format(group, limit))['values']
4142

4243
def all_project_administrators(self):
4344
for project in self.project_list():
44-
log.info("Processing project: {0} - {1}".format(project['key'], project['name']))
45+
log.info('Processing project: {0} - {1}'.format(project['key'], project['name']))
4546
yield {
4647
'project_key': project['key'],
4748
'project_name': project['name'],
48-
'project_administrators': [{'email': x['emailAddress'], 'name': x['displayName']} for x in self.project_users_with_administrator_permissions(project['key'])]}
49+
'project_administrators': [{'email': x['emailAddress'], 'name': x['displayName']}
50+
for x in self.project_users_with_administrator_permissions(project['key'])]}

examples/confluence-create-page.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33

44

55
confluence = Confluence(
6-
url="http://localhost:8090",
7-
username="admin",
8-
password="admin")
6+
url='http://localhost:8090',
7+
username='admin',
8+
password='admin')
99

1010
status = confluence.create_page(
11-
space="DEMO",
12-
title="This is the title",
13-
body="This is the body")
11+
space='DEMO',
12+
title='This is the title',
13+
body='This is the body')
1414

1515
pprint(status)

examples/confluence-update-page.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33

44

55
confluence = Confluence(
6-
url="http://localhost:8090",
7-
username="admin",
8-
password="admin")
6+
url='http://localhost:8090',
7+
username='admin',
8+
password='admin')
99

1010
status = confluence.update_page(
1111
page_id=123456,
12-
title="This is the new title",
13-
body="This is the new body")
12+
title='This is the new title',
13+
body='This is the new body')
1414

1515
pprint(status)

examples/jira-jql-query.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
from atlassian import Jira
33

44

5-
JQL = "project = DEMO AND status NOT IN (Closed, Resolved) ORDER BY issuekey"
5+
JQL = 'project = DEMO AND status NOT IN (Closed, Resolved) ORDER BY issuekey'
66

77
jira = Jira(
8-
url="http://localhost:8080",
9-
username="admin",
10-
password="admin")
8+
url='http://localhost:8080',
9+
username='admin',
10+
password='admin')
1111

1212
data = jira.jql(JQL)
1313
pprint(data)

0 commit comments

Comments
 (0)