Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitc99e399

Browse files
author
Gauvain Pocentek
committed
Add support for protected branches
This feature appeared in gitlab 9.5.Fixes#299
1 parentfcccfbd commitc99e399

File tree

4 files changed

+41
-0
lines changed

4 files changed

+41
-0
lines changed

‎docs/api-objects.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ API examples
77

88
gl_objects/access_requests
99
gl_objects/branches
10+
gl_objects/protected_branches
1011
gl_objects/messages
1112
gl_objects/builds
1213
gl_objects/commits

‎docs/gl_objects/branches.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,21 @@
2626
branch.protect()
2727
branch.unprotect()
2828
# end protect
29+
30+
# p_branch list
31+
p_branches=project.protectedbranches.list()
32+
# end p_branch list
33+
34+
# p_branch get
35+
p_branch=project.protectedbranches.get('master')
36+
# end p_branch get
37+
38+
# p_branch create
39+
p_branch=project.protectedbranches.create({'name':'*-stable'})
40+
# end p_branch create
41+
42+
# p_branch delete
43+
project.protectedbranches.delete('*-stable')
44+
# or
45+
p_branch.delete()
46+
# end p_branch delete

‎gitlab/v4/objects.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1732,6 +1732,17 @@ class ProjectDeploymentManager(RetrieveMixin, RESTManager):
17321732
_from_parent_attrs= {'project_id':'id'}
17331733

17341734

1735+
classProjectProtectedBranch(ObjectDeleteMixin,RESTObject):
1736+
_id_attr='name'
1737+
1738+
1739+
classProjectProtectedBranchManager(NoUpdateMixin,RESTManager):
1740+
_path='/projects/%(project_id)s/protected_branches'
1741+
_obj_cls=ProjectProtectedBranch
1742+
_from_parent_attrs= {'project_id':'id'}
1743+
_create_attrs= (('name', ), ('push_access_level','merge_access_level'))
1744+
1745+
17351746
classProjectRunner(ObjectDeleteMixin,RESTObject):
17361747
pass
17371748

@@ -1767,6 +1778,7 @@ class Project(SaveMixin, ObjectDeleteMixin, RESTObject):
17671778
('notes','ProjectNoteManager'),
17681779
('notificationsettings','ProjectNotificationSettingsManager'),
17691780
('pipelines','ProjectPipelineManager'),
1781+
('protectedbranches','ProjectProtectedBranchManager'),
17701782
('runners','ProjectRunnerManager'),
17711783
('services','ProjectServiceManager'),
17721784
('snippets','ProjectSnippetManager'),

‎tools/python_test_v4.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -394,6 +394,16 @@
394394
exceptgitlab.GitlabMRClosedError:
395395
pass
396396

397+
# protected branches
398+
p_b=admin_project.protectedbranches.create({'name':'*-stable'})
399+
assert(p_b.name=='*-stable')
400+
p_b=admin_project.protectedbranches.get('*-stable')
401+
# master is protected by default
402+
assert(len(admin_project.protectedbranches.list())==2)
403+
admin_project.protectedbranches.delete('master')
404+
p_b.delete()
405+
assert(len(admin_project.protectedbranches.list())==0)
406+
397407
# stars
398408
admin_project.star()
399409
assert(admin_project.star_count==1)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp