class LabClient::MergeRequests

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Public Instance Methods

accept(project_id, merge_request_id, query = {}) click to toggle source

Accept

# File lib/labclient/merge_requests/accept.rb, line 41
def accept(project_id, merge_request_id, query = {})
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:put, "projects/#{project_id}/merge_requests/#{merge_request_id}/merge", MergeRequest, query)
end
add_spent_time(project_id, merge_request_id, duration) click to toggle source
# File lib/labclient/merge_requests/time_stats.rb, line 60
def add_spent_time(project_id, merge_request_id, duration)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  duration = ChronicDuration.output(ChronicDuration.parse(duration.to_s), format: :short)
  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/add_spent_time", nil, duration: duration)
end
cancel_auto_merge(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/cancel_auto_merge.rb, line 31
def cancel_auto_merge(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/cancel_merge_when_pipeline_succeeds", MergeRequest)
end
changes(project_id, merge_request_id) click to toggle source

Show Specific

# File lib/labclient/merge_requests/changes.rb, line 27
def changes(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}/changes", Changes)
end
closes_issues(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/closes_issues.rb, line 28
def closes_issues(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}/closes_issues", Issue)
end
commits(project_id, merge_request_id) click to toggle source

Show Specific

# File lib/labclient/merge_requests/commits.rb, line 15
def commits(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}/commits", Commit)
end
create(project_id, query) click to toggle source

Create

# File lib/labclient/merge_requests/create.rb, line 57
def create(project_id, query)
  project_id = format_id(project_id)

  client.request(:post, "projects/#{project_id}/merge_requests", MergeRequest, query)
end
create_pipeline(project_id, merge_request_id) click to toggle source

Create New Pipeline

# File lib/labclient/merge_requests/pipelines.rb, line 56
def create_pipeline(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/pipelines", Pipeline)
end
delete(project_id, merge_request_id) click to toggle source

Delete

# File lib/labclient/merge_requests/delete.rb, line 24
def delete(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:delete, "projects/#{project_id}/merge_requests/#{merge_request_id}")
end
diff_versions(project_id, mr_id, diff_id = nil) click to toggle source

Show Specific

# File lib/labclient/merge_requests/diff_versions.rb, line 58
def diff_versions(project_id, mr_id, diff_id = nil)
  project_id = format_id(project_id)
  mr_id = format_id(mr_id)
  diff_id = format_id(diff_id)

  if diff_id
    client.request(:get, "projects/#{project_id}/merge_requests/#{mr_id}/versions/#{diff_id}", MergeRequestDiff)
  else
    client.request(:get, "projects/#{project_id}/merge_requests/#{mr_id}/versions", MergeRequestDiff)
  end
end
list(query = {}) click to toggle source

List

# File lib/labclient/merge_requests/list.rb, line 77
def list(query = {})
  %i[created_after created_before updated_after updated_before].each do |field|
    query[field] = query[field].to_time.iso8601 if format_time?(query[field])
  end

  client.request(:get, 'merge_requests', MergeRequest, query)
end
list_group(group_id, query = {}) click to toggle source

Group

# File lib/labclient/merge_requests/list.rb, line 96
def list_group(group_id, query = {})
  group_id = format_id(group_id)
  %i[created_after created_before updated_after updated_before].each do |field|
    query[field] = query[field].to_time.iso8601 if format_time?(query[field])
  end

  client.request(:get, "groups/#{group_id}/merge_requests", MergeRequest, query)
end
list_project(project_id, query = {}) click to toggle source

Project

# File lib/labclient/merge_requests/list.rb, line 86
def list_project(project_id, query = {})
  project_id = format_id(project_id)
  %i[created_after created_before updated_after updated_before].each do |field|
    query[field] = query[field].to_time.iso8601 if format_time?(query[field])
  end

  client.request(:get, "projects/#{project_id}/merge_requests", MergeRequest, query)
end
merge_ref(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/merge_ref.rb, line 41
def merge_ref(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}/merge_ref")
end
participants(project_id, merge_request_id) click to toggle source

Show Specific

# File lib/labclient/merge_requests/participants.rb, line 29
def participants(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}/participants", User)
end
pipelines(project_id, merge_request_id) click to toggle source

Show Specific

# File lib/labclient/merge_requests/pipelines.rb, line 27
def pipelines(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}/pipelines", Pipeline)
end
rebase(project_id, merge_request_id, skip_ci = false) click to toggle source
# File lib/labclient/merge_requests/rebase.rb, line 38
def rebase(project_id, merge_request_id, skip_ci = false)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:put, "projects/#{project_id}/merge_requests/#{merge_request_id}/rebase", nil, skip_ci: skip_ci)
end
reset_spent_time(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/time_stats.rb, line 150
def reset_spent_time(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/reset_spent_time")
end
reset_time_estimate(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/time_stats.rb, line 126
def reset_time_estimate(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/reset_time_estimate")
end
show(project_id, merge_request_id = nil, query = {}) click to toggle source

Show Specific

# File lib/labclient/merge_requests/show.rb, line 25
def show(project_id, merge_request_id = nil, query = {})
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}", MergeRequest, query)
end
subscribe(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/subscribe.rb, line 24
def subscribe(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/subscribe", MergeRequest)
end
time_estimate(project_id, merge_request_id, duration) click to toggle source
# File lib/labclient/merge_requests/time_stats.rb, line 99
def time_estimate(project_id, merge_request_id, duration)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  duration = ChronicDuration.output(ChronicDuration.parse(duration.to_s), format: :short)
  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/time_estimate", nil, duration: duration)
end
time_stats(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/time_stats.rb, line 22
def time_stats(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:get, "projects/#{project_id}/merge_requests/#{merge_request_id}/time_stats")
end
todo(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/todo.rb, line 24
def todo(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/todo", Todo)
end
unsubscribe(project_id, merge_request_id) click to toggle source
# File lib/labclient/merge_requests/unsubscribe.rb, line 24
def unsubscribe(project_id, merge_request_id)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:post, "projects/#{project_id}/merge_requests/#{merge_request_id}/unsubscribe", MergeRequest)
end
update(project_id, merge_request_id, query) click to toggle source

Update

# File lib/labclient/merge_requests/update.rb, line 28
def update(project_id, merge_request_id, query)
  project_id = format_id(project_id)
  merge_request_id = format_id(merge_request_id)

  client.request(:put, "projects/#{project_id}/merge_requests/#{merge_request_id}", MergeRequest, query)
end