Skip to content

Commit 4943991

Browse files
committed
feat: add group runners api
1 parent 74b3ddc commit 4943991

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

docs/gl_objects/runners.rst

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ Verify a registered runner token::
7878
except GitlabVerifyError:
7979
print("Invalid token")
8080

81-
Project runners
81+
Project/Group runners
8282
===============
8383

8484
Reference
@@ -89,6 +89,9 @@ Reference
8989
+ :class:`gitlab.v4.objects.ProjectRunner`
9090
+ :class:`gitlab.v4.objects.ProjectRunnerManager`
9191
+ :attr:`gitlab.v4.objects.Project.runners`
92+
+ :class:`gitlab.v4.objects.GroupRunner`
93+
+ :class:`gitlab.v4.objects.GroupRunnerManager`
94+
+ :attr:`gitlab.v4.objects.Group.runners`
9295

9396
* GitLab API: https://docs.gitlab.com/ce/api/runners.html
9497

gitlab/v4/objects.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1308,6 +1308,17 @@ class GroupProjectManager(ListMixin, RESTManager):
13081308
)
13091309

13101310

1311+
class GroupRunner(ObjectDeleteMixin, RESTObject):
1312+
pass
1313+
1314+
1315+
class GroupRunnerManager(NoUpdateMixin, RESTManager):
1316+
_path = "/groups/%(group_id)s/runners"
1317+
_obj_cls = GroupRunner
1318+
_from_parent_attrs = {"group_id": "id"}
1319+
_create_attrs = (("runner_id",), tuple())
1320+
1321+
13111322
class GroupSubgroup(RESTObject):
13121323
pass
13131324

@@ -1357,6 +1368,7 @@ class Group(SaveMixin, ObjectDeleteMixin, RESTObject):
13571368
("milestones", "GroupMilestoneManager"),
13581369
("notificationsettings", "GroupNotificationSettingsManager"),
13591370
("projects", "GroupProjectManager"),
1371+
("runners", "GroupRunnerManager"),
13601372
("subgroups", "GroupSubgroupManager"),
13611373
("variables", "GroupVariableManager"),
13621374
("clusters", "GroupClusterManager"),
@@ -5382,7 +5394,8 @@ def all(self, scope=None, **kwargs):
53825394
query_data = {}
53835395
if scope is not None:
53845396
query_data["scope"] = scope
5385-
return self.gitlab.http_list(path, query_data, **kwargs)
5397+
obj = self.gitlab.http_list(path, query_data, **kwargs)
5398+
return [self._obj_cls(self, item) for item in obj]
53865399

53875400
@cli.register_custom_action("RunnerManager", ("token",))
53885401
@exc.on_http_error(exc.GitlabVerifyError)

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy