diff options
author | Ian Sparks <isparks@mdsol.com> | 2017-04-01 15:17:16 +0100 |
---|---|---|
committer | Gauvain Pocentek <gauvain@pocentek.net> | 2017-04-01 16:17:16 +0200 |
commit | 34c7a234b5c84b2f40217bea3aadc7f77129cc8d (patch) | |
tree | 0e7704f9683ae6d5099e6a49165cb57104f5f0ac | |
parent | 9d806995d51a9ff846b10ed95a738e5cafe9e7d2 (diff) | |
download | gitlab-34c7a234b5c84b2f40217bea3aadc7f77129cc8d.tar.gz |
Feature/milestone merge requests (#247)
Added milestone.merge_requests() API
-rw-r--r-- | docs/gl_objects/milestones.py | 9 | ||||
-rw-r--r-- | docs/gl_objects/milestones.rst | 6 | ||||
-rw-r--r-- | gitlab/objects.py | 16 |
3 files changed, 29 insertions, 2 deletions
diff --git a/docs/gl_objects/milestones.py b/docs/gl_objects/milestones.py index 27be573..83065fc 100644 --- a/docs/gl_objects/milestones.py +++ b/docs/gl_objects/milestones.py @@ -30,13 +30,18 @@ milestone.save() # state # close a milestone milestone.state_event = 'close' -milestone.save +milestone.save() # activate a milestone milestone.state_event = 'activate' -m.save() +milestone.save() # end state # issues issues = milestone.issues() # end issues + +# merge_requests +merge_requests = milestone.merge_requests() +# end merge_requests + diff --git a/docs/gl_objects/milestones.rst b/docs/gl_objects/milestones.rst index db83275..47e585a 100644 --- a/docs/gl_objects/milestones.rst +++ b/docs/gl_objects/milestones.rst @@ -53,3 +53,9 @@ List the issues related to a milestone: .. literalinclude:: milestones.py :start-after: # issues :end-before: # end issues + +List the merge requests related to a milestone: + +.. literalinclude:: milestones.py + :start-after: # merge_requests + :end-before: # end merge_requests
\ No newline at end of file diff --git a/gitlab/objects.py b/gitlab/objects.py index 8c8e5d9..9c7b59b 100644 --- a/gitlab/objects.py +++ b/gitlab/objects.py @@ -1871,6 +1871,22 @@ class ProjectMilestone(GitlabObject): {'project_id': self.project_id}, **kwargs) + def merge_requests(self, **kwargs): + """List the merge requests related to this milestone + + Returns: + list (ProjectMergeRequest): List of merge requests + + Raises: + GitlabConnectionError: If the server cannot be reached. + GitlabListError: If the server fails to perform the request. + """ + url = ('/projects/%s/milestones/%s/merge_requests' % + (self.project_id, self.id)) + return self.gitlab._raw_list(url, ProjectMergeRequest, + {'project_id': self.project_id}, + **kwargs) + class ProjectMilestoneManager(BaseManager): obj_cls = ProjectMilestone |