summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorValeriy Sizov <vsv2711@gmail.com>2012-10-21 14:00:27 +0300
committerValeriy Sizov <vsv2711@gmail.com>2012-10-22 23:09:21 +0300
commitbd049e5e7c80259689eb4494a3e7eea4bd5a66b0 (patch)
tree6a328d424f3ddb3cf9c684e69052ef24ccc30744
parent42abdf69d59ecf28688af5994ff2e324c50a6d33 (diff)
downloadgitlab-ce-bd049e5e7c80259689eb4494a3e7eea4bd5a66b0.tar.gz
API:merge request show && list
-rw-r--r--lib/api.rb1
-rw-r--r--lib/api/entities.rb6
-rw-r--r--lib/api/merge_requests.rb31
3 files changed, 38 insertions, 0 deletions
diff --git a/lib/api.rb b/lib/api.rb
index 2890a8cc9e8..7a1845443e7 100644
--- a/lib/api.rb
+++ b/lib/api.rb
@@ -18,5 +18,6 @@ module Gitlab
mount Issues
mount Milestones
mount Session
+ mount MergeRequests
end
end
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index ee693de699e..8c405f29568 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -63,5 +63,11 @@ module Gitlab
class SSHKey < Grape::Entity
expose :id, :title, :key
end
+
+ class MergeRequest < Grape::Entity
+ expose :id, :target_branch, :source_branch, :project_id,
+ :title, :closed, :merged
+ expose :author, :assignee, using: Entities::UserBasic
+ end
end
end
diff --git a/lib/api/merge_requests.rb b/lib/api/merge_requests.rb
new file mode 100644
index 00000000000..12c9647be3d
--- /dev/null
+++ b/lib/api/merge_requests.rb
@@ -0,0 +1,31 @@
+module Gitlab
+ # Issues API
+ class MergeRequests < Grape::API
+ before { authenticate! }
+
+ resource :projects do
+ #list
+ get ":id/merge_requests" do
+ project = current_user.projects.find(params[:id])
+ present project.merge_requests, with: Entities::MergeRequest
+ end
+
+ #show
+ get ":id/merge_request/:merge_request_id" do
+ project = current_user.projects.find(params[:id])
+ present project.merge_requests.find(params[:merge_request_id]), with: Entities::MergeRequest
+ end
+
+ #create merge_request
+ post ":id/merge_requests" do
+
+ end
+
+ #update merge_request
+ put ":id/merge_request/:merge_request_id" do
+
+ end
+
+ end
+ end
+end