diff options
Diffstat (limited to 'gitlab')
-rw-r--r-- | gitlab/__init__.py | 6 | ||||
-rw-r--r-- | gitlab/objects.py | 30 |
2 files changed, 36 insertions, 0 deletions
diff --git a/gitlab/__init__.py b/gitlab/__init__.py index 2699328..56a53c9 100644 --- a/gitlab/__init__.py +++ b/gitlab/__init__.py @@ -82,6 +82,10 @@ class Gitlab(object): namespaces (NamespaceManager): Manager for namespaces project_accessrequests (ProjectAccessRequestManager): Manager for GitLab projects access requests + project_boards (ProjectBoardManager): Manager for GitLab projects + boards + project_board_lists (ProjectBoardListManager): Manager for GitLab + project board lists project_branches (ProjectBranchManager): Manager for GitLab projects branches project_builds (ProjectBuildManager): Manager for GitLab projects @@ -175,6 +179,8 @@ class Gitlab(object): self.licenses = LicenseManager(self) self.namespaces = NamespaceManager(self) self.project_accessrequests = ProjectAccessRequestManager(self) + self.project_boards = ProjectBoardManager(self) + self.project_board_listss = ProjectBoardListManager(self) self.project_branches = ProjectBranchManager(self) self.project_builds = ProjectBuildManager(self) self.project_commits = ProjectCommitManager(self) diff --git a/gitlab/objects.py b/gitlab/objects.py index 9ab1dc0..ad57d2f 100644 --- a/gitlab/objects.py +++ b/gitlab/objects.py @@ -925,6 +925,34 @@ class NamespaceManager(BaseManager): obj_cls = Namespace +class ProjectBoardList(GitlabObject): + _url = '/projects/%(project_id)s/boards/%(board_id)s/lists' + requiredUrlAttrs = ['project_id', 'board_id'] + _constructorTypes = {'label': 'ProjectLabel'} + requiredCreateAttrs = ['label_id'] + requiredUpdateAttrs = ['position'] + + +class ProjectBoardListManager(BaseManager): + obj_cls = ProjectBoardList + + +class ProjectBoard(GitlabObject): + _url = '/projects/%(project_id)s/boards' + requiredUrlAttrs = ['project_id'] + _constructorTypes = {'labels': 'ProjectBoardList'} + canGet = 'from_list' + canUpdate = False + canCreate = False + canDelete = False + managers = [('lists', ProjectBoardListManager, + [('project_id', 'project_id'), ('board_id', 'id')])] + + +class ProjectBoardManager(BaseManager): + obj_cls = ProjectBoard + + class ProjectBranch(GitlabObject): _url = '/projects/%(project_id)s/repository/branches' _constructorTypes = {'author': 'User', "committer": "User"} @@ -1925,6 +1953,8 @@ class Project(GitlabObject): managers = [ ('accessrequests', ProjectAccessRequestManager, [('project_id', 'id')]), + ('boards', ProjectBoardManager, [('project_id', 'id')]), + ('board_lists', ProjectBoardListManager, [('project_id', 'id')]), ('branches', ProjectBranchManager, [('project_id', 'id')]), ('builds', ProjectBuildManager, [('project_id', 'id')]), ('commits', ProjectCommitManager, [('project_id', 'id')]), |