summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKirill Zaitsev <kirik910@gmail.com>2014-09-19 12:23:18 +0400
committerKirill Zaitsev <kirik910@gmail.com>2014-10-03 10:23:32 +0400
commitb4963e9dda1ced7c219f24172e9fa4c8a5076b69 (patch)
tree374799440bccd7a984af8d20a9f366d22c7267ab
parenta3d90c5045ae322a013484165cdebcd764dc5d69 (diff)
downloadgitlab-ce-b4963e9dda1ced7c219f24172e9fa4c8a5076b69.tar.gz
Add tag_push_events to project hook api
-rw-r--r--app/models/hooks/web_hook.rb1
-rw-r--r--doc/api/projects.md2
-rw-r--r--lib/api/entities.rb3
-rw-r--r--lib/api/project_hooks.rb16
4 files changed, 19 insertions, 3 deletions
diff --git a/app/models/hooks/web_hook.rb b/app/models/hooks/web_hook.rb
index 752eb8074ac..23fa01e0b70 100644
--- a/app/models/hooks/web_hook.rb
+++ b/app/models/hooks/web_hook.rb
@@ -21,6 +21,7 @@ class WebHook < ActiveRecord::Base
default_value_for :push_events, true
default_value_for :issues_events, false
default_value_for :merge_requests_events, false
+ default_value_for :tag_push_events, false
# HTTParty timeout
default_timeout Gitlab.config.gitlab.webhook_timeout
diff --git a/doc/api/projects.md b/doc/api/projects.md
index 8385e11b805..dfe3502b6e4 100644
--- a/doc/api/projects.md
+++ b/doc/api/projects.md
@@ -447,6 +447,7 @@ Parameters:
- `push_events` - Trigger hook on push events
- `issues_events` - Trigger hook on issues events
- `merge_requests_events` - Trigger hook on merge_requests events
+- `tag_push_events` - Trigger hook on push_tag events
### Edit project hook
@@ -464,6 +465,7 @@ Parameters:
- `push_events` - Trigger hook on push events
- `issues_events` - Trigger hook on issues events
- `merge_requests_events` - Trigger hook on merge_requests events
+- `tag_push_events` - Trigger hook on push_tag events
### Delete project hook
diff --git a/lib/api/entities.rb b/lib/api/entities.rb
index ffa3e8a149e..80e9470195e 100644
--- a/lib/api/entities.rb
+++ b/lib/api/entities.rb
@@ -30,7 +30,8 @@ module API
end
class ProjectHook < Hook
- expose :project_id, :push_events, :issues_events, :merge_requests_events
+ expose :project_id, :push_events
+ expose :issues_events, :merge_requests_events, :tag_push_events
end
class ForkedFromProject < Grape::Entity
diff --git a/lib/api/project_hooks.rb b/lib/api/project_hooks.rb
index 79c3d122d32..7d056b9bf58 100644
--- a/lib/api/project_hooks.rb
+++ b/lib/api/project_hooks.rb
@@ -38,7 +38,13 @@ module API
# POST /projects/:id/hooks
post ":id/hooks" do
required_attributes! [:url]
- attrs = attributes_for_keys [:url, :push_events, :issues_events, :merge_requests_events]
+ attrs = attributes_for_keys [
+ :url,
+ :push_events,
+ :issues_events,
+ :merge_requests_events,
+ :tag_push_events
+ ]
@hook = user_project.hooks.new(attrs)
if @hook.save
@@ -62,7 +68,13 @@ module API
put ":id/hooks/:hook_id" do
@hook = user_project.hooks.find(params[:hook_id])
required_attributes! [:url]
- attrs = attributes_for_keys [:url, :push_events, :issues_events, :merge_requests_events]
+ attrs = attributes_for_keys [
+ :url,
+ :push_events,
+ :issues_events,
+ :merge_requests_events,
+ :tag_push_events
+ ]
if @hook.update_attributes attrs
present @hook, with: Entities::ProjectHook