Skip to content

Commit

Permalink
Add option to confidential issues events to trigger Webhooks
Browse files Browse the repository at this point in the history
  • Loading branch information
dbalexandre committed Aug 31, 2016
1 parent debb65b commit a103a5d
Show file tree
Hide file tree
Showing 6 changed files with 37 additions and 12 deletions.
1 change: 1 addition & 0 deletions app/controllers/projects/hooks_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ def hook_params
:pipeline_events,
:enable_ssl_verification,
:issues_events,
:confidential_issues_events,
:merge_requests_events,
:note_events,
:push_events,
Expand Down
1 change: 1 addition & 0 deletions app/models/hooks/web_hook.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ class WebHook < ActiveRecord::Base

default_value_for :push_events, true
default_value_for :issues_events, false
default_value_for :confidential_issues_events, false
default_value_for :note_events, false
default_value_for :merge_requests_events, false
default_value_for :tag_push_events, false
Expand Down
2 changes: 1 addition & 1 deletion app/views/projects/hooks/_project_hook.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
.col-md-8.col-lg-7
%strong.light-header= hook.url
%div
- %w(push_events tag_push_events issues_events note_events merge_requests_events build_events pipeline_events wiki_page_events).each do |trigger|
- %w(push_events tag_push_events issues_events confidential_issues_events note_events merge_requests_events build_events pipeline_events wiki_page_events).each do |trigger|
- if hook.send(trigger)
%span.label.label-gray.deploy-project-label= trigger.titleize
.col-md-4.col-lg-5.text-right-lg.prepend-top-5
Expand Down
7 changes: 7 additions & 0 deletions app/views/shared/web_hooks/_form.html.haml
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,13 @@
%strong Issues events
%p.light
This URL will be triggered when an issue is created/updated/merged
%li
= f.check_box :confidential_issues_events, class: 'pull-left'
.prepend-left-20
= f.label :confidential_issues_events, class: 'list-label' do
%strong Confidential Issues events
%p.light
This URL will be triggered when a confidential issue is created/updated/merged
%li
= f.check_box :merge_requests_events, class: 'pull-left'
.prepend-left-20
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
class AddConfidentialIssuesEventsToWebHooks < ActiveRecord::Migration
include Gitlab::Database::MigrationHelpers

DOWNTIME = false

disable_ddl_transaction!

def up
add_column_with_default :web_hooks, :confidential_issues_events, :boolean, default: false, allow_null: false
end

def down
remove_column :web_hooks, :confidential_issues_events
end
end
23 changes: 12 additions & 11 deletions db/schema.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1113,22 +1113,23 @@
add_index "users_star_projects", ["user_id"], name: "index_users_star_projects_on_user_id", using: :btree

create_table "web_hooks", force: :cascade do |t|
t.string "url", limit: 2000
t.string "url", limit: 2000
t.integer "project_id"
t.datetime "created_at"
t.datetime "updated_at"
t.string "type", default: "ProjectHook"
t.string "type", default: "ProjectHook"
t.integer "service_id"
t.boolean "push_events", default: true, null: false
t.boolean "issues_events", default: false, null: false
t.boolean "merge_requests_events", default: false, null: false
t.boolean "tag_push_events", default: false
t.boolean "note_events", default: false, null: false
t.boolean "enable_ssl_verification", default: true
t.boolean "build_events", default: false, null: false
t.boolean "wiki_page_events", default: false, null: false
t.boolean "push_events", default: true, null: false
t.boolean "issues_events", default: false, null: false
t.boolean "merge_requests_events", default: false, null: false
t.boolean "tag_push_events", default: false
t.boolean "note_events", default: false, null: false
t.boolean "enable_ssl_verification", default: true
t.boolean "build_events", default: false, null: false
t.boolean "wiki_page_events", default: false, null: false
t.string "token"
t.boolean "pipeline_events", default: false, null: false
t.boolean "pipeline_events", default: false, null: false
t.boolean "confidential_issues_events", default: false, null: false
end

add_index "web_hooks", ["project_id"], name: "index_web_hooks_on_project_id", using: :btree
Expand Down

0 comments on commit a103a5d

Please sign in to comment.