From b4963e9dda1ced7c219f24172e9fa4c8a5076b69 Mon Sep 17 00:00:00 2001 From: Kirill Zaitsev <kirik910@gmail.com> Date: Fri, 19 Sep 2014 12:23:18 +0400 Subject: [PATCH] Add tag_push_events to project hook api --- app/models/hooks/web_hook.rb | 1 + doc/api/projects.md | 2 ++ lib/api/entities.rb | 3 ++- lib/api/project_hooks.rb | 16 ++++++++++++++-- 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 -- 2.30.9