@@ -461,6 +461,17 @@ class GroupAccessRequestManager(GetFromListMixin, CreateMixin, DeleteMixin,
461461 _from_parent_attrs = {'group_id' : 'id' }
462462
463463
464+ class GroupCustomAttribute (ObjectDeleteMixin , RESTObject ):
465+ _id_attr = 'key'
466+
467+
468+ class GroupCustomAttributeManager (RetrieveMixin , SetMixin , DeleteMixin ,
469+ RESTManager ):
470+ _path = '/groups/%(group_id)s/custom_attributes'
471+ _obj_cls = GroupCustomAttribute
472+ _from_parent_attrs = {'group_id' : 'id' }
473+
474+
464475class GroupIssue (RESTObject ):
465476 pass
466477
@@ -614,6 +625,7 @@ class Group(SaveMixin, ObjectDeleteMixin, RESTObject):
614625 _short_print_attr = 'name'
615626 _managers = (
616627 ('accessrequests' , 'GroupAccessRequestManager' ),
628+ ('customattributes' , 'GroupCustomAttributeManager' ),
617629 ('issues' , 'GroupIssueManager' ),
618630 ('members' , 'GroupMemberManager' ),
619631 ('milestones' , 'GroupMilestoneManager' ),
@@ -839,6 +851,17 @@ class ProjectBranchManager(NoUpdateMixin, RESTManager):
839851 _create_attrs = (('branch' , 'ref' ), tuple ())
840852
841853
854+ class ProjectCustomAttribute (ObjectDeleteMixin , RESTObject ):
855+ _id_attr = 'key'
856+
857+
858+ class ProjectCustomAttributeManager (RetrieveMixin , SetMixin , DeleteMixin ,
859+ RESTManager ):
860+ _path = '/projects/%(project_id)s/custom_attributes'
861+ _obj_cls = ProjectCustomAttribute
862+ _from_parent_attrs = {'project_id' : 'id' }
863+
864+
842865class ProjectJob (RESTObject ):
843866 @cli .register_custom_action ('ProjectJob' )
844867 @exc .on_http_error (exc .GitlabJobCancelError )
@@ -2200,6 +2223,7 @@ class Project(SaveMixin, ObjectDeleteMixin, RESTObject):
22002223 ('branches' , 'ProjectBranchManager' ),
22012224 ('jobs' , 'ProjectJobManager' ),
22022225 ('commits' , 'ProjectCommitManager' ),
2226+ ('customattributes' , 'ProjectCustomAttributeManager' ),
22032227 ('deployments' , 'ProjectDeploymentManager' ),
22042228 ('environments' , 'ProjectEnvironmentManager' ),
22052229 ('events' , 'ProjectEventManager' ),
0 commit comments