Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/hooks/web_hook.rb')
-rw-r--r--app/models/hooks/web_hook.rb60
1 files changed, 0 insertions, 60 deletions
diff --git a/app/models/hooks/web_hook.rb b/app/models/hooks/web_hook.rb
deleted file mode 100644
index 315d96af1b9..00000000000
--- a/app/models/hooks/web_hook.rb
+++ /dev/null
@@ -1,60 +0,0 @@
-# == Schema Information
-#
-# Table name: web_hooks
-#
-# id :integer not null, primary key
-# url :string(255)
-# project_id :integer
-# created_at :datetime
-# updated_at :datetime
-# type :string(255) default("ProjectHook")
-# service_id :integer
-# push_events :boolean default(TRUE), not null
-# issues_events :boolean default(FALSE), not null
-# merge_requests_events :boolean default(FALSE), not null
-# tag_push_events :boolean default(FALSE)
-#
-
-class WebHook < ActiveRecord::Base
- include Sortable
- include HTTParty
-
- 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
-
- validates :url, presence: true,
- format: { with: /\A#{URI.regexp(%w(http https))}\z/, message: "should be a valid url" }
-
- def execute(data)
- parsed_url = URI.parse(url)
- if parsed_url.userinfo.blank?
- WebHook.post(url,
- body: data.to_json,
- headers: { "Content-Type" => "application/json" },
- verify: false)
- else
- post_url = url.gsub("#{parsed_url.userinfo}@", "")
- auth = {
- username: URI.decode(parsed_url.user),
- password: URI.decode(parsed_url.password),
- }
- WebHook.post(post_url,
- body: data.to_json,
- headers: { "Content-Type" => "application/json" },
- verify: false,
- basic_auth: auth)
- end
- rescue SocketError, Errno::ECONNRESET, Errno::ECONNREFUSED, Net::OpenTimeout => e
- logger.error("WebHook Error => #{e}")
- false
- end
-
- def async_execute(data)
- Sidekiq::Client.enqueue(ProjectWebHookWorker, id, data)
- end
-end