Skip to content

Commit 7411907

Browse files
author
Gauvain Pocentek
committed
docs: add milestones API
1 parent baa09fe commit 7411907

File tree

3 files changed

+98
-0
lines changed

3 files changed

+98
-0
lines changed

docs/api-objects.rst

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ API objects manipulation
1616
gl_objects/licenses
1717
gl_objects/mrs
1818
gl_objects/namespaces
19+
gl_objects/milestones
1920
gl_objects/projects
2021
gl_objects/runners
2122
gl_objects/users

docs/gl_objects/milestones.py

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# list
2+
milestones = gl.project_milestones.list(project_id=1)
3+
# or
4+
milestones = project.milestones.list()
5+
# end list
6+
7+
# filter
8+
milestones = gl.project_milestones.list(project_id=1, state='closed')
9+
# or
10+
milestones = project.milestones.list(state='closed')
11+
# end filter
12+
13+
# get
14+
milestone = gl.project_milestones.get(milestone_id, project_id=1)
15+
# or
16+
milestone = project.milestones.get(milestone_id)
17+
# end get
18+
19+
# create
20+
milestone = gl.project_milestones.create({'title': '1.0'}, project_id=1)
21+
# or
22+
milestone = project.milestones.create({'title': '1.0'})
23+
# end create
24+
25+
# update
26+
milestone.description = 'v 1.0 release'
27+
milestone.save()
28+
# end update
29+
30+
# state
31+
# close a milestone
32+
milestone.state_event = 'close'
33+
milestone.save
34+
35+
# activate a milestone
36+
milestone.state_event = 'activate'
37+
m.save()
38+
# end state
39+
40+
# issues
41+
issues = milestone.issues()
42+
# end issues

docs/gl_objects/milestones.rst

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
##########
2+
Milestones
3+
##########
4+
5+
Use :class:`~gitlab.objects.ProjectMilestone` objects to manipulate milestones.
6+
The :attr:`gitlab.Gitlab.project_milestones` and :attr:`Project.milestones
7+
<gitlab.objects.Project.milestones>` manager objects provide helper functions.
8+
9+
Examples
10+
--------
11+
12+
List the milestones for a project:
13+
14+
.. literalinclude:: milestones.py
15+
:start-after: # list
16+
:end-before: # end list
17+
18+
You can filter the list using the following parameters:
19+
20+
* ``iid``: unique ID of the milestone for the project
21+
* ``state``: either ``active`` or ``closed``
22+
23+
.. literalinclude:: milestones.py
24+
:start-after: # filter
25+
:end-before: # end filter
26+
27+
Get a single milestone:
28+
29+
.. literalinclude:: milestones.py
30+
:start-after: # get
31+
:end-before: # end get
32+
33+
Create a milestone:
34+
35+
.. literalinclude:: milestones.py
36+
:start-after: # create
37+
:end-before: # end create
38+
39+
Edit a milestone:
40+
41+
.. literalinclude:: milestones.py
42+
:start-after: # update
43+
:end-before: # end update
44+
45+
Change the state of a milestone (activate / close):
46+
47+
.. literalinclude:: milestones.py
48+
:start-after: # state
49+
:end-before: # end state
50+
51+
List the issues related to a milestone:
52+
53+
.. literalinclude:: milestones.py
54+
:start-after: # issues
55+
:end-before: # end issues

0 commit comments

Comments
 (0)