summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Sparks <isparks@mdsol.com>2017-04-01 15:17:16 +0100
committerGauvain Pocentek <gauvain@pocentek.net>2017-04-01 16:17:16 +0200
commit34c7a234b5c84b2f40217bea3aadc7f77129cc8d (patch)
tree0e7704f9683ae6d5099e6a49165cb57104f5f0ac
parent9d806995d51a9ff846b10ed95a738e5cafe9e7d2 (diff)
downloadgitlab-34c7a234b5c84b2f40217bea3aadc7f77129cc8d.tar.gz
Feature/milestone merge requests (#247)
Added milestone.merge_requests() API
-rw-r--r--docs/gl_objects/milestones.py9
-rw-r--r--docs/gl_objects/milestones.rst6
-rw-r--r--gitlab/objects.py16
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