diff options
Diffstat (limited to 'gitlab/v4/objects.py')
-rw-r--r-- | gitlab/v4/objects.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gitlab/v4/objects.py b/gitlab/v4/objects.py index 856d74a..2db2e39 100644 --- a/gitlab/v4/objects.py +++ b/gitlab/v4/objects.py @@ -2459,6 +2459,27 @@ class ProjectPipelineScheduleManager(CRUDMixin, RESTManager): ('description', 'ref', 'cron', 'cron_timezone', 'active')) +class ProjectPushRules(SaveMixin, ObjectDeleteMixin, RESTObject): + _id_attr = None + + +class ProjectPushRulesManager(GetWithoutIdMixin, CreateMixin, UpdateMixin, + DeleteMixin, RESTManager): + _path = '/projects/%(project_id)s/push_rule' + _obj_cls = ProjectPushRules + _from_parent_attrs = {'project_id': 'id'} + _create_attrs = (tuple(), + ('deny_delete_tag', 'member_check', + 'prevent_secrets', 'commit_message_regex', + 'branch_name_regex', 'author_email_regex', + 'file_name_regex', 'max_file_size')) + _update_attrs = (tuple(), + ('deny_delete_tag', 'member_check', + 'prevent_secrets', 'commit_message_regex', + 'branch_name_regex', 'author_email_regex', + 'file_name_regex', 'max_file_size')) + + class ProjectSnippetNoteAwardEmoji(ObjectDeleteMixin, RESTObject): pass @@ -2887,6 +2908,7 @@ class Project(SaveMixin, ObjectDeleteMixin, RESTObject): ('pipelines', 'ProjectPipelineManager'), ('protectedbranches', 'ProjectProtectedBranchManager'), ('pipelineschedules', 'ProjectPipelineScheduleManager'), + ('pushrules', 'ProjectPushRulesManager'), ('runners', 'ProjectRunnerManager'), ('services', 'ProjectServiceManager'), ('snippets', 'ProjectSnippetManager'), |