Module: Gitlab::Client::Issues
- Included in:
- Gitlab::Client
- Defined in:
- lib/gitlab/client/issues.rb
Overview
Defines methods related to issues.
Instance Method Summary collapse
-
#add_time_spent_on_issue(project, id, duration) ⇒ Object
Adds spent time for an issue.
-
#close_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Closes an issue.
-
#create_issue(project, title, options = {}) ⇒ Gitlab::ObjectifiedHash
Creates a new issue.
-
#delete_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Deletes an issue.
-
#edit_issue(project, id, options = {}) ⇒ Gitlab::ObjectifiedHash
Updates an issue.
-
#estimate_time_of_issue(project, id, duration) ⇒ Object
Sets an estimated time of work for an issue.
-
#issue(project, id) ⇒ Gitlab::ObjectifiedHash
Gets a single issue.
-
#issues(project = nil, options = {}) ⇒ Array<Gitlab::ObjectifiedHash>
Gets a list of user’s issues.
-
#move_issue(project, id, options = {}) ⇒ Gitlab::ObjectifiedHash
Move an issue.
-
#reopen_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Reopens an issue.
-
#reset_time_estimate_of_issue(project, id) ⇒ Object
Resets the estimated time for an issue to 0 seconds.
-
#reset_time_spent_on_issue(project, id) ⇒ Object
Resets the total spent time for this issue to 0 seconds.
-
#subscribe_to_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Subscribe to an issue.
-
#time_stats_for_issue(project, id) ⇒ Object
Get time tracking stats for an issue.
-
#unsubscribe_from_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Unsubscribe from an issue.
Instance Method Details
#add_time_spent_on_issue(project, id, duration) ⇒ Object
Adds spent time for an issue
181 182 183 |
# File 'lib/gitlab/client/issues.rb', line 181 def add_time_spent_on_issue(project, id, duration) post("/projects/#{url_encode project}/issues/#{id}/add_spent_time", body: { duration: url_encode(duration) }) end |
#close_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Closes an issue.
84 85 86 |
# File 'lib/gitlab/client/issues.rb', line 84 def close_issue(project, id) put("/projects/#{url_encode project}/issues/#{id}", body: { state_event: 'close' }) end |
#create_issue(project, title, options = {}) ⇒ Gitlab::ObjectifiedHash
Creates a new issue.
52 53 54 55 |
# File 'lib/gitlab/client/issues.rb', line 52 def create_issue(project, title, ={}) body = { title: title }.merge() post("/projects/#{url_encode project}/issues", body: body) end |
#delete_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Deletes an issue. Only for admins and project owners
133 134 135 |
# File 'lib/gitlab/client/issues.rb', line 133 def delete_issue(project, id) delete("/projects/#{url_encode project}/issues/#{id}") end |
#edit_issue(project, id, options = {}) ⇒ Gitlab::ObjectifiedHash
Updates an issue.
72 73 74 |
# File 'lib/gitlab/client/issues.rb', line 72 def edit_issue(project, id, ={}) put("/projects/#{url_encode project}/issues/#{id}", body: ) end |
#estimate_time_of_issue(project, id, duration) ⇒ Object
Sets an estimated time of work for an issue.
158 159 160 |
# File 'lib/gitlab/client/issues.rb', line 158 def estimate_time_of_issue(project, id, duration) post("/projects/#{url_encode project}/issues/#{id}/time_estimate", body: { duration: url_encode(duration) }) end |
#issue(project, id) ⇒ Gitlab::ObjectifiedHash
Gets a single issue.
34 35 36 |
# File 'lib/gitlab/client/issues.rb', line 34 def issue(project, id) get("/projects/#{url_encode project}/issues/#{id}") end |
#issues(project = nil, options = {}) ⇒ Array<Gitlab::ObjectifiedHash>
Gets a list of user’s issues. Will return a list of project’s issues if project ID passed.
18 19 20 21 22 23 24 |
# File 'lib/gitlab/client/issues.rb', line 18 def issues(project=nil, ={}) if project.to_s.empty? && project.to_i.zero? get("/issues", query: ) else get("/projects/#{url_encode project}/issues", query: ) end end |
#move_issue(project, id, options = {}) ⇒ Gitlab::ObjectifiedHash
Move an issue.
146 147 148 |
# File 'lib/gitlab/client/issues.rb', line 146 def move_issue(project, id, ={}) post("/projects/#{url_encode project}/issues/#{id}/move", body: ) end |
#reopen_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Reopens an issue.
96 97 98 |
# File 'lib/gitlab/client/issues.rb', line 96 def reopen_issue(project, id) put("/projects/#{url_encode project}/issues/#{id}", body: { state_event: 'reopen' }) end |
#reset_time_estimate_of_issue(project, id) ⇒ Object
Resets the estimated time for an issue to 0 seconds.
169 170 171 |
# File 'lib/gitlab/client/issues.rb', line 169 def reset_time_estimate_of_issue(project, id) post("/projects/#{url_encode project}/issues/#{id}/reset_time_estimate") end |
#reset_time_spent_on_issue(project, id) ⇒ Object
Resets the total spent time for this issue to 0 seconds.
192 193 194 |
# File 'lib/gitlab/client/issues.rb', line 192 def reset_time_spent_on_issue(project, id) post("/projects/#{url_encode project}/issues/#{id}/reset_spent_time") end |
#subscribe_to_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Subscribe to an issue.
108 109 110 |
# File 'lib/gitlab/client/issues.rb', line 108 def subscribe_to_issue(project, id) post("/projects/#{url_encode project}/issues/#{id}/subscribe") end |
#time_stats_for_issue(project, id) ⇒ Object
Get time tracking stats for an issue
203 204 205 |
# File 'lib/gitlab/client/issues.rb', line 203 def time_stats_for_issue(project, id) get("/projects/#{url_encode project}/issues/#{id}/time_stats") end |
#unsubscribe_from_issue(project, id) ⇒ Gitlab::ObjectifiedHash
Unsubscribe from an issue.
120 121 122 |
# File 'lib/gitlab/client/issues.rb', line 120 def unsubscribe_from_issue(project, id) post("/projects/#{url_encode project}/issues/#{id}/unsubscribe") end |