diff options
Diffstat (limited to 'gitlab/v4/objects.py')
-rw-r--r-- | gitlab/v4/objects.py | 61 |
1 files changed, 56 insertions, 5 deletions
diff --git a/gitlab/v4/objects.py b/gitlab/v4/objects.py index 2a3615f..84fb5c3 100644 --- a/gitlab/v4/objects.py +++ b/gitlab/v4/objects.py @@ -711,8 +711,14 @@ class ProjectDeployTokenManager(ListMixin, CreateMixin, DeleteMixin, RESTManager _from_parent_attrs = {"project_id": "id"} _obj_cls = ProjectDeployToken _create_attrs = ( - ("name", "scopes",), - ("expires_at", "username",), + ( + "name", + "scopes", + ), + ( + "expires_at", + "username", + ), ) @@ -725,8 +731,14 @@ class GroupDeployTokenManager(ListMixin, CreateMixin, DeleteMixin, RESTManager): _from_parent_attrs = {"group_id": "id"} _obj_cls = GroupDeployToken _create_attrs = ( - ("name", "scopes",), - ("expires_at", "username",), + ( + "name", + "scopes", + ), + ( + "expires_at", + "username", + ), ) @@ -1279,6 +1291,23 @@ class GroupNotificationSettingsManager(NotificationSettingsManager): _from_parent_attrs = {"group_id": "id"} +class GroupPackage(RESTObject): + pass + + +class GroupPackageManager(ListMixin, RESTManager): + _path = "/groups/%(group_id)s/packages" + _obj_cls = GroupPackage + _from_parent_attrs = {"group_id": "id"} + _list_filters = ( + "exclude_subgroups", + "order_by", + "sort", + "package_type", + "package_name", + ) + + class GroupProject(RESTObject): pass @@ -1365,6 +1394,7 @@ class Group(SaveMixin, ObjectDeleteMixin, RESTObject): ("mergerequests", "GroupMergeRequestManager"), ("milestones", "GroupMilestoneManager"), ("notificationsettings", "GroupNotificationSettingsManager"), + ("packages", "GroupPackageManager"), ("projects", "GroupProjectManager"), ("runners", "GroupRunnerManager"), ("subgroups", "GroupSubgroupManager"), @@ -2840,6 +2870,22 @@ class ProjectNotificationSettingsManager(NotificationSettingsManager): _from_parent_attrs = {"project_id": "id"} +class ProjectPackage(ObjectDeleteMixin, RESTObject): + pass + + +class ProjectPackageManager(ListMixin, GetMixin, DeleteMixin, RESTManager): + _path = "/projects/%(project_id)s/packages" + _obj_cls = ProjectPackage + _from_parent_attrs = {"project_id": "id"} + _list_filters = ( + "order_by", + "sort", + "package_type", + "package_name", + ) + + class ProjectPagesDomain(SaveMixin, ObjectDeleteMixin, RESTObject): _id_attr = "domain" @@ -4181,7 +4227,11 @@ class ProjectServiceManager(GetMixin, UpdateMixin, DeleteMixin, ListMixin, RESTM ), ), "jira": ( - ("url", "username", "password",), + ( + "url", + "username", + "password", + ), ( "api_url", "active", @@ -4532,6 +4582,7 @@ class Project(SaveMixin, ObjectDeleteMixin, RESTObject): ("milestones", "ProjectMilestoneManager"), ("notes", "ProjectNoteManager"), ("notificationsettings", "ProjectNotificationSettingsManager"), + ("packages", "ProjectPackageManager"), ("pagesdomains", "ProjectPagesDomainManager"), ("pipelines", "ProjectPipelineManager"), ("protectedbranches", "ProjectProtectedBranchManager"), |