From b07802ab684d2126f84f927a21191a79d200788d Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 29 Dec 2014 16:41:10 +0200 Subject: [PATCH 1/3] Rescue Net::OpenTimeout exception in web hook Signed-off-by: Dmitriy Zaporozhets --- app/models/hooks/web_hook.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/hooks/web_hook.rb b/app/models/hooks/web_hook.rb index 8479d4aecf6..d1d522be194 100644 --- a/app/models/hooks/web_hook.rb +++ b/app/models/hooks/web_hook.rb @@ -48,7 +48,7 @@ class WebHook < ActiveRecord::Base verify: false, basic_auth: auth) end - rescue SocketError, Errno::ECONNREFUSED => e + rescue SocketError, Errno::ECONNREFUSED, Net::OpenTimeout => e logger.error("WebHook Error => #{e}") false end From ed4e682eb809de9103c713a6604a732345e57529 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 29 Dec 2014 17:48:43 +0200 Subject: [PATCH 2/3] Fix async services execution broken in 7.6 Signed-off-by: Dmitriy Zaporozhets --- app/models/project_services/slack_message.rb | 16 ++++++++-------- app/workers/project_service_worker.rb | 1 + app/workers/project_web_hook_worker.rb | 3 ++- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/app/models/project_services/slack_message.rb b/app/models/project_services/slack_message.rb index 28204e5ea60..d0ddb1f162c 100644 --- a/app/models/project_services/slack_message.rb +++ b/app/models/project_services/slack_message.rb @@ -1,6 +1,14 @@ require 'slack-notifier' class SlackMessage + attr_reader :after + attr_reader :before + attr_reader :commits + attr_reader :project_name + attr_reader :project_url + attr_reader :ref + attr_reader :username + def initialize(params) @after = params.fetch(:after) @before = params.fetch(:before) @@ -23,14 +31,6 @@ class SlackMessage private - attr_reader :after - attr_reader :before - attr_reader :commits - attr_reader :project_name - attr_reader :project_url - attr_reader :ref - attr_reader :username - def message if new_branch? new_branch_message diff --git a/app/workers/project_service_worker.rb b/app/workers/project_service_worker.rb index cc0a7f25664..64d39c4d3f7 100644 --- a/app/workers/project_service_worker.rb +++ b/app/workers/project_service_worker.rb @@ -4,6 +4,7 @@ class ProjectServiceWorker sidekiq_options queue: :project_web_hook def perform(hook_id, data) + data = data.with_indifferent_access Service.find(hook_id).execute(data) end end diff --git a/app/workers/project_web_hook_worker.rb b/app/workers/project_web_hook_worker.rb index 9f9b9b1df5f..73085c046bd 100644 --- a/app/workers/project_web_hook_worker.rb +++ b/app/workers/project_web_hook_worker.rb @@ -4,6 +4,7 @@ class ProjectWebHookWorker sidekiq_options queue: :project_web_hook def perform(hook_id, data) - WebHook.find(hook_id).execute data + data = data.with_indifferent_access + WebHook.find(hook_id).execute(data) end end From 2ed9a42edc0c85a1e6957cbe2878229285fa519b Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 29 Dec 2014 17:56:29 +0200 Subject: [PATCH 3/3] Fix sidekiq for development Signed-off-by: Dmitriy Zaporozhets --- Procfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Procfile b/Procfile index a5693f8dbc5..a0ab4a734a4 100644 --- a/Procfile +++ b/Procfile @@ -1,2 +1,2 @@ web: bundle exec unicorn_rails -p ${PORT:="3000"} -E ${RAILS_ENV:="development"} -c ${UNICORN_CONFIG:="config/unicorn.rb"} -worker: bundle exec sidekiq -q post_receive,mailer,system_hook,project_web_hook,common,default,gitlab_shell +worker: bundle exec sidekiq -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default