From 6bf140279b3d022c1c6cef160f4265af3d10ea1c Mon Sep 17 00:00:00 2001 From: Charles Phillips Date: Tue, 4 Dec 2012 18:48:14 -0800 Subject: [PATCH] Expose to API: merge_request.state, merge_request.commits --- lib/api/entities.rb | 2 +- lib/api/merge_requests.rb | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/lib/api/entities.rb b/lib/api/entities.rb index 9e9d44594a2..2679ed9e8e7 100644 --- a/lib/api/entities.rb +++ b/lib/api/entities.rb @@ -65,7 +65,7 @@ module Gitlab end class MergeRequest < Grape::Entity - expose :id, :target_branch, :source_branch, :project_id, :title, :closed, :merged + expose :id, :target_branch, :source_branch, :project_id, :title, :closed, :merged, :state expose :author, :assignee, using: Entities::UserBasic end diff --git a/lib/api/merge_requests.rb b/lib/api/merge_requests.rb index 1fa0c549b13..4c1d85d0d5a 100644 --- a/lib/api/merge_requests.rb +++ b/lib/api/merge_requests.rb @@ -36,6 +36,26 @@ module Gitlab present merge_request, with: Entities::MergeRequest end + # Show MR commits + # + # Parameters: + # id (required) - The ID or code name of a project + # merge_request_id (required) - The ID of MR + # + # Example: + # GET /projects/:id/merge_request/:merge_request_id/commits + # + get ":id/merge_request/:merge_request_id/commits" do + merge_request = user_project.merge_requests.find(params[:merge_request_id]) + + authorize! :read_merge_request, merge_request + authorize! :download_code, user_project + + commits = merge_request.unmerged_commits + present CommitDecorator.decorate(commits), with: Entities::RepoCommit + + end + # Create MR # # Parameters: -- GitLab