diff options
author | Gauvain Pocentek <gauvain@pocentek.net> | 2013-09-26 20:38:58 +0200 |
---|---|---|
committer | Gauvain Pocentek <gauvain@pocentek.net> | 2013-09-26 20:38:58 +0200 |
commit | 71c87508a268fafbcb0043617ec3aa7ed0e733fd (patch) | |
tree | b931de142092385cb311d09f6878a3a32ad5a84e /gitlab.py | |
parent | 09ef68f3743bb32add0da7d5cd562dac5df00c26 (diff) | |
download | gitlab-71c87508a268fafbcb0043617ec3aa7ed0e733fd.tar.gz |
Add support for Gitlab 6.1 group members
Diffstat (limited to 'gitlab.py')
-rw-r--r-- | gitlab.py | 16 |
1 files changed, 15 insertions, 1 deletions
@@ -187,7 +187,7 @@ class Gitlab(object): cls = obj_class if obj_class._returnClass: cls = obj_class._returnClass - l = [cls(self, item) for item in r.json()] + l = [cls(self, item) for item in r.json() if item is not None] if kwargs: for k, v in kwargs.items(): if k in ('page', 'per_page'): @@ -571,12 +571,26 @@ class CurrentUser(GitlabObject): return CurrentUserKey(self.gitlab, id) +class GroupMember(GitlabObject): + _url = '/groups/%(group_id)s/members' + canGet = False + canUpdate = False + requiredCreateAttrs = ['group_id', 'user_id', 'access_level'] + requiredDeleteAttrs = ['group_id', 'user_id'] + shortPrintAttr = 'username' + + class Group(GitlabObject): _url = '/groups' _constructorTypes = {'projects': 'Project'} requiredCreateAttrs = ['name', 'path'] shortPrintAttr = 'name' + def Member(self, id=None, **kwargs): + return self._getListOrObject(GroupMember, id, + group_id=self.id, + **kwargs) + def transfer_project(self, id): url = '/groups/%d/projects/%d' % (self.id, id) r = self.gitlab.rawPost(url, None) |