module Gitlab::Client::Labels
Defines methods related to labels. @see docs.gitlab.com/ce/api/labels.html
Public Instance Methods
Creates a new label.
@example
Gitlab.create_label(42, "Backlog", '#DD10AA')
@param [Integer] project The ID of a project. @option [String] name The name of a label. @option [String] color The color of a label. @return [Gitlab::ObjectifiedHash] Information about created label.
# File lib/gitlab/client/labels.rb, line 25 def create_label(project, name, color) post("/projects/#{project}/labels", body: { name: name, color: color }) end
Deletes a label.
@example
Gitlab.delete_label(2, 'Backlog')
@param [Integer] project The ID of a project. @param [String] name The name of a label. @return [Gitlab::ObjectifiedHash] Information about deleted label.
# File lib/gitlab/client/labels.rb, line 53 def delete_label(project, name) delete("/projects/#{project}/labels", body: { name: name }) end
Updates a label.
@example
Gitlab.edit_label(42, "Backlog", { new_name: 'TODO' }) Gitlab.edit_label(42, "Backlog", { new_name: 'TODO', color: '#DD10AA' })
@param [Integer] project The ID of a project. @param [String] name The name of a label. @param [Hash] options A customizable set of options. @option options [String] :new_name The new name of a label. @option options [String] :color The color of a label. @return [Gitlab::ObjectifiedHash] Information about updated label.
# File lib/gitlab/client/labels.rb, line 41 def edit_label(project, name, options={}) put("/projects/#{project}/labels", body: options.merge(name: name)) end
Gets a list of project's labels.
@example
Gitlab.labels(5)
@param [Integer] project The ID of a project. @return [Array<Gitlab::ObjectifiedHash>]
# File lib/gitlab/client/labels.rb, line 12 def labels(project) get("/projects/#{project}/labels") end