Skip to content

Commit 79feb87

Browse files
author
Gauvain Pocentek
committed
add support for namespaces
1 parent dbad3bd commit 79feb87

File tree

3 files changed

+21
-0
lines changed

3 files changed

+21
-0
lines changed

gitlab/__init__.py

+2
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ class Gitlab(object):
7373
hooks (HookManager): Manager for GitLab hooks
7474
issues (IssueManager): Manager for GitLab issues
7575
licenses (LicenseManager): Manager for licenses
76+
namespaces (NamespaceManager): Manager for namespaces
7677
project_branches (ProjectBranchManager): Manager for GitLab projects
7778
branches
7879
project_commits (ProjectCommitManager): Manager for GitLab projects
@@ -143,6 +144,7 @@ def __init__(self, url, private_token=None, email=None, password=None,
143144
self.hooks = HookManager(self)
144145
self.issues = IssueManager(self)
145146
self.licenses = LicenseManager(self)
147+
self.namespaces = NamespaceManager(self)
146148
self.project_branches = ProjectBranchManager(self)
147149
self.project_commits = ProjectCommitManager(self)
148150
self.project_commit_comments = ProjectCommitCommentManager(self)

gitlab/objects.py

+13
Original file line numberDiff line numberDiff line change
@@ -782,6 +782,19 @@ class LicenseManager(BaseManager):
782782
obj_cls = License
783783

784784

785+
class Namespace(GitlabObject):
786+
_url = '/namespaces'
787+
canGet = 'from_list'
788+
canUpdate = False
789+
canDelete = False
790+
canCreate = False
791+
optionalListAttrs = ['search']
792+
793+
794+
class NamespaceManager(BaseManager):
795+
obj_cls = Namespace
796+
797+
785798
class ProjectBranch(GitlabObject):
786799
_url = '/projects/%(project_id)s/repository/branches'
787800
_constructorTypes = {'author': 'User', "committer": "User"}

tools/python_test.py

+6
Original file line numberDiff line numberDiff line change
@@ -234,3 +234,9 @@
234234
assert(admin_project.star_count == 1)
235235
admin_project = admin_project.unstar()
236236
assert(admin_project.star_count == 0)
237+
238+
# namespaces
239+
ns = gl.namespaces.list()
240+
assert(len(ns) != 0)
241+
ns = gl.namespaces.list(search='root')[0]
242+
assert(ns.kind == 'user')

0 commit comments

Comments
 (0)