Skip to content

Commit 5574b4c

Browse files
committed
Bamboo: normalize documentaton of that bamboo module
1 parent 5b1699c commit 5574b4c

File tree

2 files changed

+219
-39
lines changed

2 files changed

+219
-39
lines changed

atlassian/bamboo.py

Lines changed: 159 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -97,13 +97,22 @@ def base_list_call(
9797

9898
""" Projects & Plans """
9999

100+
100101
def projects(
101102
self,
102103
expand=None,
103104
favourite=False,
104105
clover_enabled=False,
105106
max_results=25,
106107
):
108+
"""
109+
Get all Projects
110+
:param expand:
111+
:param favourite:
112+
:param clover_enabled:
113+
:param max_results:
114+
:return:
115+
"""
107116
return self.base_list_call(
108117
"project",
109118
expand=expand,
@@ -115,6 +124,14 @@ def projects(
115124
)
116125

117126
def project(self, project_key, expand=None, favourite=False, clover_enabled=False):
127+
"""
128+
Get a single project by the key
129+
:param project_key:
130+
:param expand:
131+
:param favourite:
132+
:param clover_enabled:
133+
:return:
134+
"""
118135
resource = "project/{}".format(project_key)
119136
return self.base_list_call(
120137
resource=resource,
@@ -125,8 +142,21 @@ def project(self, project_key, expand=None, favourite=False, clover_enabled=Fals
125142
max_results=25,
126143
)
127144

145+
def get_project(self, project_key):
146+
"""Method used to retrieve information for project specified as project key.
147+
Possible expand parameters: plans, list of plans for project. plans.plan, list of plans with plan details
148+
(only plans visible - READ permission for user)"""
149+
resource = "project/{}?showEmpty".format(project_key)
150+
return self.get(self.resource_url(resource))
151+
152+
def delete_project(self, project_key):
153+
"""Marks project for deletion. Project will be deleted by a batch job."""
154+
resource = "project/{}".format(project_key)
155+
return self.delete(self.resource_url(resource))
156+
128157
def project_plans(self, project_key, start_index=0, max_results=25):
129158
"""
159+
Get all build plans in a project
130160
Returns a generator with the plans in a given project.
131161
:param project_key: project key
132162
:param start_index:
@@ -153,6 +183,15 @@ def plans(
153183
start_index=0,
154184
max_results=25,
155185
):
186+
"""
187+
Get all build plans
188+
:param expand:
189+
:param favourite:
190+
:param clover_enabled:
191+
:param start_index:
192+
:param max_results:
193+
:return:
194+
"""
156195
return self.base_list_call(
157196
"plan",
158197
expand=expand,
@@ -234,6 +273,14 @@ def enable_plan(self, plan_key):
234273
""" Branches """
235274

236275
def search_branches(self, plan_key, include_default_branch=True, max_results=25, start=0):
276+
"""
277+
Search Branches
278+
:param plan_key:
279+
:param include_default_branch:
280+
:param max_results:
281+
:param start:
282+
:return:
283+
"""
237284
params = {
238285
"max-result": max_results,
239286
"start-index": start,
@@ -256,7 +303,16 @@ def plan_branches(
256303
clover_enabled=False,
257304
max_results=25,
258305
):
259-
"""api/1.0/plan/{projectKey}-{buildKey}/branch"""
306+
"""
307+
Get all plan Branches
308+
api/1.0/plan/{projectKey}-{buildKey}/branch
309+
:param plan_key:
310+
:param expand:
311+
:param favourite:
312+
:param clover_enabled:
313+
:param max_results:
314+
:return:
315+
"""
260316
resource = "plan/{}/branch".format(plan_key)
261317
return self.base_list_call(
262318
resource,
@@ -617,11 +673,29 @@ def comments(
617673
start_index=0,
618674
max_results=25,
619675
):
676+
"""
677+
Get comments for a specific build
678+
:param project_key:
679+
:param plan_key:
680+
:param build_number:
681+
:param start_index:
682+
:param max_results:
683+
:return:
684+
"""
620685
resource = "result/{}-{}-{}/comment".format(project_key, plan_key, build_number)
621686
params = {"start-index": start_index, "max-results": max_results}
622687
return self.get(self.resource_url(resource), params=params)
623688

624689
def create_comment(self, project_key, plan_key, build_number, comment, author=None):
690+
"""
691+
Create a comment for a specific build
692+
:param project_key:
693+
:param plan_key:
694+
:param build_number:
695+
:param comment:
696+
:param author:
697+
:return:
698+
"""
625699
resource = "result/{}-{}-{}/comment".format(project_key, plan_key, build_number)
626700
comment_data = {
627701
"author": author if author else self.username,
@@ -637,15 +711,40 @@ def labels(
637711
start_index=0,
638712
max_results=25,
639713
):
714+
"""
715+
Get labels for a build
716+
:param project_key:
717+
:param plan_key:
718+
:param build_number:
719+
:param start_index:
720+
:param max_results:
721+
:return:
722+
"""
640723
resource = "result/{}-{}-{}/label".format(project_key, plan_key, build_number)
641724
params = {"start-index": start_index, "max-results": max_results}
642725
return self.get(self.resource_url(resource), params=params)
643726

644727
def create_label(self, project_key, plan_key, build_number, label):
728+
"""
729+
Create a label for a specific build
730+
:param project_key:
731+
:param plan_key:
732+
:param build_number:
733+
:param label:
734+
:return:
735+
"""
645736
resource = "result/{}-{}-{}/label".format(project_key, plan_key, build_number)
646737
return self.post(self.resource_url(resource), data={"name": label})
647738

648739
def delete_label(self, project_key, plan_key, build_number, label):
740+
"""
741+
Delete a label for a specific build
742+
:param project_key:
743+
:param plan_key:
744+
:param build_number:
745+
:param label:
746+
:return:
747+
"""
649748
resource = "result/{}-{}-{}/label/{}".format(project_key, plan_key, build_number, label)
650749
return self.delete(self.resource_url(resource))
651750

@@ -671,34 +770,43 @@ def get_projects(self):
671770
for project in r["projects"]["project"]:
672771
yield project
673772

674-
def get_project(self, project_key):
675-
"""Method used to retrieve information for project specified as project key.
676-
Possible expand parameters: plans, list of plans for project. plans.plan, list of plans with plan details
677-
(only plans visible - READ permission for user)"""
678-
resource = "project/{}?showEmpty".format(project_key)
679-
return self.get(self.resource_url(resource))
680-
681-
def delete_project(self, project_key):
682-
"""Marks project for deletion. Project will be deleted by a batch job."""
683-
resource = "project/{}".format(project_key)
684-
return self.delete(self.resource_url(resource))
685-
686773
""" Deployments """
687774

688775
def deployment_projects(self):
776+
"""
777+
Returns all deployment projects.
778+
:return:
779+
"""
689780
resource = "deploy/project/all"
690781
for project in self.get(self.resource_url(resource)):
691782
yield project
692783

693784
def deployment_project(self, project_id):
785+
"""
786+
Returns a deployment project.
787+
:param project_id:
788+
:return:
789+
"""
694790
resource = "deploy/project/{}".format(project_id)
695791
return self.get(self.resource_url(resource))
696792

697793
def delete_deployment_project(self, project_id):
794+
"""
795+
Deletes a deployment project.
796+
:param project_id:
797+
:return:
798+
"""
698799
resource = "deploy/project/{}".format(project_id)
699800
return self.delete(self.resource_url(resource))
700801

701802
def deployment_environment_results(self, env_id, expand=None, max_results=25):
803+
"""
804+
Get deployment environment results
805+
:param env_id:
806+
:param expand:
807+
:param max_results:
808+
:return:
809+
"""
702810
resource = "deploy/environment/{environmentId}/results".format(environmentId=env_id)
703811
params = {"max-result": max_results, "start-index": 0}
704812
size = 1
@@ -844,23 +952,6 @@ def get_users_not_in_group(self, group_name, filter_users="", start=0, limit=25)
844952
url = "rest/api/latest/admin/groups/{}/more-non-members".format(group_name)
845953
return self.get(url, params=params)
846954

847-
def get_build_queue(self, expand="queuedBuilds"):
848-
"""
849-
Lists all the builds waiting in the build queue, adds or removes a build from the build queue.
850-
May be used also to resume build on manual stage or rerun failed jobs.
851-
:return:
852-
"""
853-
params = {"expand": expand}
854-
return self.get("rest/api/latest/queue", params=params)
855-
856-
def get_deployment_queue(self, expand="queuedDeployments"):
857-
"""
858-
Provide list of deployment results scheduled for execution and waiting in queue.
859-
:return:
860-
"""
861-
params = {"expand": expand}
862-
return self.get("rest/api/latest/queue/deployment", params=params)
863-
864955
def get_deployment_users(self, deployment_id, filter_name=None, start=0, limit=25):
865956
"""
866957
Retrieve a list of users with their explicit permissions to given resource.
@@ -1022,6 +1113,23 @@ def grant_group_to_environment(self, environment_id, group, permissions):
10221113
def server_info(self):
10231114
return self.get(self.resource_url("info"))
10241115

1116+
def get_build_queue(self, expand="queuedBuilds"):
1117+
"""
1118+
Lists all the builds waiting in the build queue, adds or removes a build from the build queue.
1119+
May be used also to resume build on manual stage or rerun failed jobs.
1120+
:return:
1121+
"""
1122+
params = {"expand": expand}
1123+
return self.get("rest/api/latest/queue", params=params)
1124+
1125+
def get_deployment_queue(self, expand="queuedDeployments"):
1126+
"""
1127+
Provide list of deployment results scheduled for execution and waiting in queue.
1128+
:return:
1129+
"""
1130+
params = {"expand": expand}
1131+
return self.get("rest/api/latest/queue/deployment", params=params)
1132+
10251133
def agent_status(self, online=False):
10261134
"""
10271135
Provides a list of all agents.
@@ -1128,6 +1236,20 @@ def chart(
11281236
start_index=9,
11291237
max_results=25,
11301238
):
1239+
"""
1240+
Get chart data
1241+
:param report_key:
1242+
:param build_keys:
1243+
:param group_by_period:
1244+
:param date_filter:
1245+
:param date_from:
1246+
:param date_to:
1247+
:param width:
1248+
:param height:
1249+
:param start_index:
1250+
:param max_results:
1251+
:return:
1252+
"""
11311253
params = {
11321254
"reportKey": report_key,
11331255
"buildKeys": build_keys,
@@ -1173,6 +1295,7 @@ def health_check(self):
11731295
response = self.get("rest/supportHealthCheck/1.0/check/")
11741296
return response
11751297

1298+
"""Elastic Bamboo"""
11761299
def get_elastic_instance_logs(self, instance_id):
11771300
"""
11781301
Get logs from an EC2 instance
@@ -1201,7 +1324,7 @@ def create_elastic_configuration(self, json):
12011324

12021325
def get_elastic_configuration(self, configuration_id):
12031326
"""
1204-
Get informatin of an elastic configuration
1327+
Get information of an elastic configuration
12051328
:param configuration_id:
12061329
:return:
12071330
"""
@@ -1264,7 +1387,7 @@ def get_plugin_info(self, plugin_key):
12641387

12651388
def get_plugin_license_info(self, plugin_key):
12661389
"""
1267-
Provide plugin license info
1390+
Provide plugin license information
12681391
:return a json specific License query
12691392
"""
12701393
url = "rest/plugins/1.0/{plugin_key}-key/license".format(plugin_key=plugin_key)
@@ -1324,6 +1447,10 @@ def delete_plugin(self, plugin_key):
13241447
return self.delete(url)
13251448

13261449
def check_plugin_manager_status(self):
1450+
"""
1451+
Check plugin manager status
1452+
:return:
1453+
"""
13271454
url = "rest/plugins/latest/safe-mode"
13281455
return self.request(method="GET", path=url, headers=self.safe_mode_headers)
13291456

0 commit comments

Comments
 (0)