Skip to content

Commit 8312b06

Browse files
Gonchik TsymzhitovGonchik Tsymzhitov
authored andcommitted
Bitbucket: set default brnach name method
1 parent 3402ed6 commit 8312b06

File tree

4 files changed

+54
-39
lines changed

4 files changed

+54
-39
lines changed

atlassian/bamboo.py

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010

1111
class Bamboo(AtlassianRestAPI):
12-
1312
""" Private methods """
1413

1514
def _get_generator(self, path, elements_key='results', element_key='result', data=None, flags=None,
@@ -45,7 +44,7 @@ def _get_generator(self, path, elements_key='results', element_key='result', dat
4544
yield e
4645
try:
4746
results = response[elements_key]
48-
size = 0
47+
size = 0
4948
# Check if we still can get results
5049
if size > max_results or results['size'] == 0:
5150
return
@@ -56,9 +55,9 @@ def _get_generator(self, path, elements_key='results', element_key='result', dat
5655
except TypeError:
5756
logging.error("Broken response: {}".format(response))
5857
yield response
59-
6058

61-
def base_list_call(self, resource, expand, favourite, clover_enabled, max_results, label=None, start_index=0, **kwargs):
59+
def base_list_call(self, resource, expand, favourite, clover_enabled, max_results, label=None, start_index=0,
60+
**kwargs):
6261
flags = []
6362
params = {'max-results': max_results}
6463
if expand:
@@ -207,7 +206,8 @@ def get_vcs_branches(self, plan_key, max_results=25):
207206
""" Build results """
208207

209208
def results(self, project_key=None, plan_key=None, job_key=None, build_number=None, expand=None, favourite=False,
210-
clover_enabled=False, issue_key=None, label=None, start_index=0, max_results=25, include_all_states=False):
209+
clover_enabled=False, issue_key=None, label=None, start_index=0, max_results=25,
210+
include_all_states=False):
211211
"""
212212
Get results as generic method
213213
:param project_key:
@@ -258,7 +258,8 @@ def latest_results(self, expand=None, favourite=False, clover_enabled=False, lab
258258
:return:
259259
"""
260260
return self.results(expand=expand, favourite=favourite, clover_enabled=clover_enabled,
261-
label=label, issue_key=issue_key, start_index=start_index, max_results=max_results, include_all_states=include_all_states)
261+
label=label, issue_key=issue_key, start_index=start_index, max_results=max_results,
262+
include_all_states=include_all_states)
262263

263264
def project_latest_results(self, project_key, expand=None, favourite=False, clover_enabled=False, label=None,
264265
issue_key=None, start_index=0, max_results=25, include_all_states=False):
@@ -276,7 +277,8 @@ def project_latest_results(self, project_key, expand=None, favourite=False, clov
276277
:return:
277278
"""
278279
return self.results(project_key, expand=expand, favourite=favourite, clover_enabled=clover_enabled,
279-
label=label, issue_key=issue_key, start_index=start_index, max_results=max_results, include_all_states=include_all_states)
280+
label=label, issue_key=issue_key, start_index=start_index, max_results=max_results,
281+
include_all_states=include_all_states)
280282

281283
def plan_results(self, project_key, plan_key, expand=None, favourite=False, clover_enabled=False, label=None,
282284
issue_key=None, start_index=0, max_results=25, include_all_states=False):
@@ -295,7 +297,8 @@ def plan_results(self, project_key, plan_key, expand=None, favourite=False, clov
295297
:return:
296298
"""
297299
return self.results(project_key, plan_key, expand=expand, favourite=favourite, clover_enabled=clover_enabled,
298-
label=label, issue_key=issue_key, start_index=start_index, max_results=max_results, include_all_states=include_all_states)
300+
label=label, issue_key=issue_key, start_index=start_index, max_results=max_results,
301+
include_all_states=include_all_states)
299302

300303
def build_result(self, build_key, expand=None, include_all_states=False):
301304
"""
@@ -334,7 +337,7 @@ def build_latest_result(self, plan_key, expand=None, include_all_states=False):
334337
def delete_build_result(self, build_key):
335338
"""
336339
Deleting result for specific build
337-
:param build_key: Take full build key, example: PROJ-PLAN-8
340+
:param build_key: Take full build key, example: PROJECT-PLAN-8
338341
"""
339342
custom_resource = '/build/admin/deletePlanResults.action'
340343
build_key = build_key.split('-')

atlassian/bitbucket.py

Lines changed: 37 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,6 @@ def project_list(self, limit=None):
1919
params['limit'] = limit
2020
return (self.get('rest/api/1.0/projects', params=params) or {}).get('values')
2121

22-
def repo_list(self, project_key):
23-
"""
24-
Provide the repository list in a specific BB project
25-
:param project_key: The Project Key ID you need to list
26-
return:
27-
"""
28-
url = 'rest/api/1.0/projects/{projectKey}/repos?limit=1000'.format(
29-
projectKey=project_key)
30-
return self.get(url)
31-
3222
def project(self, key):
3323
"""
3424
Provide project info
@@ -57,11 +47,10 @@ def update_project(self, key, **params):
5747
"""
5848
Update project
5949
:param key:
60-
:param **params:
6150
:return:
6251
"""
6352
data = self.project(key)
64-
if not 'errors' in data:
53+
if 'errors' not in data:
6554
data.update(params)
6655
url = 'rest/api/1.0/projects/{0}'.format(key)
6756
return self.put(url, data=data)
@@ -72,7 +61,7 @@ def update_project(self, key, **params):
7261
def project_avatar(self, key, content_type='image/png'):
7362
"""
7463
Get project avatar
75-
64+
:param content_type:
7665
:param key:
7766
:return:
7867
"""
@@ -86,8 +75,9 @@ def project_avatar(self, key, content_type='image/png'):
8675
def set_project_avatar(self, key, icon, content_type='image/png'):
8776
"""
8877
Set project avatar
89-
90-
:param key:
78+
:param key: A Project key
79+
:param icon:
80+
:param content_type:
9181
:return:
9282
"""
9383
headers = {'X-Atlassian-Token': 'no-check'}
@@ -174,18 +164,18 @@ def project_remove_user_permissions(self, project_key, username):
174164
username=username)
175165
return self.delete(url)
176166

177-
def project_grant_group_permissions(self, project_key, groupname, permission):
167+
def project_grant_group_permissions(self, project_key, group_name, permission):
178168
"""
179169
Grant the specified project permission to an specific group
180170
:param project_key: project key involved
181-
:param groupname: group to be granted
171+
:param group_name: group to be granted
182172
:param permission: the project permissions available are 'PROJECT_ADMIN', 'PROJECT_WRITE' and 'PROJECT_READ'
183173
:return:
184174
"""
185-
url = 'rest/api/1.0/projects/{project_key}/permissions/groups?permission={permission}&name={groupname}'.format(
175+
url = 'rest/api/1.0/projects/{project_key}/permissions/groups?permission={permission}&name={group_name}'.format(
186176
project_key=project_key,
187177
permission=permission,
188-
groupname=groupname)
178+
group_name=group_name)
189179
return self.put(url)
190180

191181
def project_remove_group_permissions(self, project_key, groupname):
@@ -199,9 +189,9 @@ def project_remove_group_permissions(self, project_key, groupname):
199189
:param groupname: group to be granted
200190
:return:
201191
"""
202-
url = 'rest/api/1.0/projects/{project_key}/permissions/groups?name={groupname}'.format(
192+
url = 'rest/api/1.0/projects/{project_key}/permissions/groups?name={group_name}'.format(
203193
project_key=project_key,
204-
groupname=groupname)
194+
group_name=groupname)
205195
return self.delete(url)
206196

207197
def repo_grant_user_permissions(self, project_key, repo_key, username, permission):
@@ -273,6 +263,8 @@ def repo_remove_group_permissions(self, project_key, repo_key, groupname, permis
273263
:return:
274264
"""
275265
params = {'name': groupname}
266+
if permission:
267+
params['permission'] = permission
276268
url = 'rest/api/1.0/projects/{project_key}/repos/{repo_key}/permissions/groups'.format(project_key=project_key,
277269
repo_key=repo_key)
278270
return self.delete(url, params=params)
@@ -506,6 +498,20 @@ def get_default_branch(self, project, repository):
506498
repository=repository)
507499
return self.get(url)
508500

501+
def set_default_branch(self, project, repository, ref_branch_name):
502+
"""
503+
Update the default branch of a repository.
504+
The authenticated user must have REPO_ADMIN permission for the specified repository to call this resource.
505+
:param project: project key
506+
:param repository: repo slug
507+
:param ref_branch_name: ref name like refs/heads/master
508+
:return:
509+
"""
510+
data = {'id': ref_branch_name}
511+
url = 'rest/api/1.0/projects/{project}/repos/{repository}/branches/default'.format(project=project,
512+
repository=repository)
513+
return self.put(url, data=data)
514+
509515
def create_branch(self, project_key, repository, name, start_point, message=""):
510516
"""Creates a branch using the information provided in the request.
511517
@@ -587,6 +593,7 @@ def get_pull_requests(self, project, repository, state='OPEN', order='newest', l
587593
(as in: "oldest first") or NEWEST.
588594
:param limit:
589595
:param start:
596+
:param at:
590597
:return:
591598
"""
592599
url = 'rest/api/1.0/projects/{project}/repos/{repository}/pull-requests'.format(project=project,
@@ -613,7 +620,7 @@ def get_pull_requests(self, project, repository, state='OPEN', order='newest', l
613620
pr_list += (response or {}).get('values')
614621
return pr_list
615622

616-
def get_pull_requests_activities(self, project, repository, pull_request_id):
623+
def get_pull_requests_activities(self, project, repository, pull_request_id, start=0):
617624
"""
618625
Get pull requests activities
619626
:param project:
@@ -625,7 +632,7 @@ def get_pull_requests_activities(self, project, repository, pull_request_id):
625632
project=project,
626633
repository=repository,
627634
pullRequestId=pull_request_id)
628-
params = {'start': 0}
635+
params = {'start': start}
629636
response = self.get(url, params=params)
630637
if 'values' not in response:
631638
return []
@@ -807,7 +814,7 @@ def update_pull_request_comment(self, project, repository, pull_request_id, comm
807814
that must match the server's version of the comment
808815
or the update will fail.
809816
"""
810-
url = "/rest/api/1.0/projects/{project}/repos/{repository}/pull-requests/{pull_request_id}/comments/{comment_id}".format(
817+
url = "rest/api/1.0/projects/{project}/repos/{repository}/pull-requests/{pull_request_id}/comments/{comment_id}".format(
811818
project=project, repository=repository, pull_request_id=pull_request_id, comment_id=comment_id
812819
)
813820
payload = {
@@ -1321,6 +1328,8 @@ def upload_plugin(self, plugin_path):
13211328
def upload_file(self, project, repository, content, message, branch, filename):
13221329
"""
13231330
Upload new file for given branch.
1331+
:param project:
1332+
:param repository:
13241333
:param content:
13251334
:param message:
13261335
:param branch:
@@ -1392,8 +1401,10 @@ def delete_code_insights_report(self, project_key, repository_slug, commit_id, r
13921401
def create_code_insights_report(self, project_key, repository_slug, commit_id, report_key, report_title,
13931402
**report_params):
13941403
"""
1395-
Create a new insight report, or replace the existing one if a report already exists for the given repository, commit, and report key.
1396-
A request to replace an existing report will be rejected if the authenticated user was not the creator of the specified report.
1404+
Create a new insight report, or replace the existing one
1405+
if a report already exists for the given repository, commit, and report key.
1406+
A request to replace an existing report will be rejected
1407+
if the authenticated user was not the creator of the specified report.
13971408
For further information visit: https://docs.atlassian.com/bitbucket-server/rest/6.6.1/bitbucket-code-insights-rest.html
13981409
:projectKey: str
13991410
:repositorySlug: str

atlassian/jira.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -384,8 +384,8 @@ def add_version(self, project_key, project_id, version, is_archived=False, is_re
384384
:param project_key: the project key
385385
:param project_id: the project id
386386
:param version: the new project version to add
387-
:is_archived:
388-
:is_released:
387+
:param is_archived:
388+
:param is_released:
389389
:return:
390390
"""
391391
payload = {'name': version, 'archived': is_archived, 'released': is_released, 'project': project_key,
@@ -579,7 +579,7 @@ def get_custom_fields(self, search=None, start=1, limit=50):
579579
if limit:
580580
params['maxResults'] = limit
581581
return self.get(url, params=params)
582-
582+
583583
def create_custom_field(self, name, type, search_key=None, description=None):
584584
"""
585585
Creates a custom field with the given name and type
@@ -1771,6 +1771,7 @@ def tempo_timesheets_approval_worklog_report(self, user_key, period_start_date):
17711771
params['periodStartDate'] = period_start_date
17721772
if user_key:
17731773
params['userKey'] = user_key
1774+
return self.get(url, params=params)
17741775

17751776
def tempo_timesheets_get_required_times(self, from_date, to_date, user_name):
17761777
"""

atlassian/rest_client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ def get(self, path, data=None, flags=None, params=None, headers=None, not_json_r
201201
:return:
202202
"""
203203
response = self.request('GET', path=path, flags=flags, params=params, data=data, headers=headers,
204-
trailing=trailing)
204+
trailing=trailing)
205205
if self.advanced_mode:
206206
return response
207207
if not_json_response:

0 commit comments

Comments
 (0)