summaryrefslogtreecommitdiff
path: root/docs/gl_objects/issues.rst
blob: 4384ba9ce99e7c925f03078d445c2241c3ace6a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
######
Issues
######

Reported issues
===============

Reference
---------

* v4 API:

  + :class:`gitlab.v4.objects.Issue`
  + :class:`gitlab.v4.objects.IssueManager`
  + :attr:`gitlab.Gitlab.issues`

* v3 API:

  + :class:`gitlab.v3.objects.Issue`
  + :class:`gitlab.v3.objects.IssueManager`
  + :attr:`gitlab.Gitlab.issues`

* GitLab API: https://docs.gitlab.com/ce/api/issues.html

Examples
--------

List the issues:

.. literalinclude:: issues.py
   :start-after: # list
   :end-before: # end list

Use the ``state`` and ``label`` parameters to filter the results. Use the
``order_by`` and ``sort`` attributes to sort the results:

.. literalinclude:: issues.py
   :start-after: # filtered list
   :end-before: # end filtered list

Group issues
============

Reference
---------

* v4 API:

  + :class:`gitlab.v4.objects.GroupIssue`
  + :class:`gitlab.v4.objects.GroupIssueManager`
  + :attr:`gitlab.v4.objects.Group.issues`

* v3 API:

  + :class:`gitlab.v3.objects.GroupIssue`
  + :class:`gitlab.v3.objects.GroupIssueManager`
  + :attr:`gitlab.v3.objects.Group.issues`
  + :attr:`gitlab.Gitlab.group_issues`

* GitLab API: https://docs.gitlab.com/ce/api/issues.html

Examples
--------

List the group issues:

.. literalinclude:: issues.py
   :start-after: # group issues list
   :end-before: # end group issues list

Project issues
==============

Reference
---------

* v4 API:

  + :class:`gitlab.v4.objects.ProjectIssue`
  + :class:`gitlab.v4.objects.ProjectIssueManager`
  + :attr:`gitlab.v4.objects.Project.issues`

* v3 API:

  + :class:`gitlab.v3.objects.ProjectIssue`
  + :class:`gitlab.v3.objects.ProjectIssueManager`
  + :attr:`gitlab.v3.objects.Project.issues`
  + :attr:`gitlab.Gitlab.project_issues`

* GitLab API: https://docs.gitlab.com/ce/api/issues.html

Examples
--------

List the project issues:

.. literalinclude:: issues.py
   :start-after: # project issues list
   :end-before: # end project issues list

Get a project issue:

.. literalinclude:: issues.py
   :start-after: # project issues get
   :end-before: # end project issues get

Create a new issue:

.. literalinclude:: issues.py
   :start-after: # project issues create
   :end-before: # end project issues create

Update an issue:

.. literalinclude:: issues.py
   :start-after: # project issue update
   :end-before: # end project issue update

Close / reopen an issue:

.. literalinclude:: issues.py
   :start-after: # project issue open_close
   :end-before: # end project issue open_close

Delete an issue:

.. literalinclude:: issues.py
   :start-after: # project issue delete
   :end-before: # end project issue delete

Subscribe / unsubscribe from an issue:

.. literalinclude:: issues.py
   :start-after: # project issue subscribe
   :end-before: # end project issue subscribe

Move an issue to another project:

.. literalinclude:: issues.py
   :start-after: # project issue move
   :end-before: # end project issue move

Make an issue as todo:

.. literalinclude:: issues.py
   :start-after: # project issue todo
   :end-before: # end project issue todo

Get time tracking stats:

.. literalinclude:: issues.py
   :start-after: # project issue time tracking stats
   :end-before: # end project issue time tracking stats

Set a time estimate for an issue:

.. literalinclude:: issues.py
   :start-after: # project issue set time estimate
   :end-before: # end project issue set time estimate

Reset a time estimate for an issue:

.. literalinclude:: issues.py
   :start-after: # project issue reset time estimate
   :end-before: # end project issue reset time estimate

Add spent time for an issue:

.. literalinclude:: issues.py
   :start-after: # project issue set time spent
   :end-before: # end project issue set time spent

Reset spent time for an issue:

.. literalinclude:: issues.py
   :start-after: # project issue reset time spent
   :end-before: # end project issue reset time spent

Get user agent detail for the issue (admin only):

.. literalinclude:: issues.py
   :start-after: # project issue useragent
   :end-before: # end project issue useragent