summaryrefslogtreecommitdiff
path: root/lib/gitlab/http.rb
diff options
context:
space:
mode:
authorBob Van Landuyt <bob@vanlanduyt.co>2019-04-23 16:27:01 +0200
committerBob Van Landuyt <bob@vanlanduyt.co>2019-05-31 09:40:54 +0200
commit589b2db06ca2ca2bc3e5d9e56968e3609f9e4626 (patch)
tree1652ec910b83d71666fabcf1957d46886a400d40 /lib/gitlab/http.rb
parent6189c869b87aa469f5efb058834cd65afd8fe563 (diff)
downloadgitlab-ce-589b2db06ca2ca2bc3e5d9e56968e3609f9e4626.tar.gz
Setup Phabricator import
This sets up all the basics for importing Phabricator tasks into GitLab issues. To import all tasks from a Phabricator instance into GitLab, we'll import all of them into a new project that will have its repository disabled. The import is hooked into a regular ProjectImport setup, but similar to the GitHub parallel importer takes care of all the imports itself. In this iteration, we're importing each page of tasks in a separate sidekiq job. The first thing we do when requesting a new page of tasks is schedule the next page to be imported. But to avoid deadlocks, we only allow a single job per worker type to run at the same time. For now we're only importing basic Issue information, this should be extended to richer information.
Diffstat (limited to 'lib/gitlab/http.rb')
-rw-r--r--lib/gitlab/http.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/gitlab/http.rb b/lib/gitlab/http.rb
index bcd9e2be35f..313b5df51d4 100644
--- a/lib/gitlab/http.rb
+++ b/lib/gitlab/http.rb
@@ -9,6 +9,13 @@ module Gitlab
BlockedUrlError = Class.new(StandardError)
RedirectionTooDeep = Class.new(StandardError)
+ HTTP_ERRORS = [
+ SocketError, OpenSSL::SSL::SSLError, Errno::ECONNRESET,
+ Errno::ECONNREFUSED, Errno::EHOSTUNREACH, Net::OpenTimeout,
+ Net::ReadTimeout, Gitlab::HTTP::BlockedUrlError,
+ Gitlab::HTTP::RedirectionTooDeep
+ ].freeze
+
include HTTParty # rubocop:disable Gitlab/HTTParty
connection_adapter ProxyHTTPConnectionAdapter