summaryrefslogtreecommitdiff
path: root/gitlab/v4/objects.py
diff options
context:
space:
mode:
authorGauvain Pocentek <gauvain@pocentek.net>2017-10-08 10:21:34 +0200
committerGauvain Pocentek <gauvain@pocentek.net>2017-10-08 10:21:34 +0200
commitd6fa94ef38c638206d1d18bbd6ddf3f56057b1ce (patch)
treec2aea9616fb921b21589c9493c2dfbd50077f22b /gitlab/v4/objects.py
parent5945537c157818483a4a14138619fa6b9341e6b3 (diff)
downloadgitlab-d6fa94ef38c638206d1d18bbd6ddf3f56057b1ce.tar.gz
Add support for listing project users
https://docs.gitlab.com/ce/api/projects.html#get-project-users Closes #328
Diffstat (limited to 'gitlab/v4/objects.py')
-rw-r--r--gitlab/v4/objects.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/gitlab/v4/objects.py b/gitlab/v4/objects.py
index 0d8dffd..e43d65e 100644
--- a/gitlab/v4/objects.py
+++ b/gitlab/v4/objects.py
@@ -1616,6 +1616,17 @@ class ProjectTriggerManager(CRUDMixin, RESTManager):
_update_attrs = (('description', ), tuple())
+class ProjectUser(User):
+ pass
+
+
+class ProjectUserManager(ListMixin, RESTManager):
+ _path = '/projects/%(project_id)s/users'
+ _obj_cls = ProjectUser
+ _from_parent_attrs = {'project_id': 'id'}
+ _list_filters = ('search',)
+
+
class ProjectVariable(SaveMixin, ObjectDeleteMixin, RESTObject):
_id_attr = 'key'
@@ -1795,6 +1806,7 @@ class Project(SaveMixin, ObjectDeleteMixin, RESTObject):
('services', 'ProjectServiceManager'),
('snippets', 'ProjectSnippetManager'),
('tags', 'ProjectTagManager'),
+ ('users', 'ProjectUserManager'),
('triggers', 'ProjectTriggerManager'),
('variables', 'ProjectVariableManager'),
)