Commit bd049e5e7c80259689eb4494a3e7eea4bd5a66b0
1 parent
42abdf69
Exists in
master
and in
4 other branches
API:merge request show && list
Showing
3 changed files
with
38 additions
and
0 deletions
Show diff stats
lib/api.rb
lib/api/entities.rb
| @@ -63,5 +63,11 @@ module Gitlab | @@ -63,5 +63,11 @@ module Gitlab | ||
| 63 | class SSHKey < Grape::Entity | 63 | class SSHKey < Grape::Entity |
| 64 | expose :id, :title, :key | 64 | expose :id, :title, :key |
| 65 | end | 65 | end |
| 66 | + | ||
| 67 | + class MergeRequest < Grape::Entity | ||
| 68 | + expose :id, :target_branch, :source_branch, :project_id, | ||
| 69 | + :title, :closed, :merged | ||
| 70 | + expose :author, :assignee, using: Entities::UserBasic | ||
| 71 | + end | ||
| 66 | end | 72 | end |
| 67 | end | 73 | end |
| @@ -0,0 +1,31 @@ | @@ -0,0 +1,31 @@ | ||
| 1 | +module Gitlab | ||
| 2 | + # Issues API | ||
| 3 | + class MergeRequests < Grape::API | ||
| 4 | + before { authenticate! } | ||
| 5 | + | ||
| 6 | + resource :projects do | ||
| 7 | + #list | ||
| 8 | + get ":id/merge_requests" do | ||
| 9 | + project = current_user.projects.find(params[:id]) | ||
| 10 | + present project.merge_requests, with: Entities::MergeRequest | ||
| 11 | + end | ||
| 12 | + | ||
| 13 | + #show | ||
| 14 | + get ":id/merge_request/:merge_request_id" do | ||
| 15 | + project = current_user.projects.find(params[:id]) | ||
| 16 | + present project.merge_requests.find(params[:merge_request_id]), with: Entities::MergeRequest | ||
| 17 | + end | ||
| 18 | + | ||
| 19 | + #create merge_request | ||
| 20 | + post ":id/merge_requests" do | ||
| 21 | + | ||
| 22 | + end | ||
| 23 | + | ||
| 24 | + #update merge_request | ||
| 25 | + put ":id/merge_request/:merge_request_id" do | ||
| 26 | + | ||
| 27 | + end | ||
| 28 | + | ||
| 29 | + end | ||
| 30 | + end | ||
| 31 | +end |