diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/bitbucket_server/connection.rb | 22 | ||||
-rw-r--r-- | lib/gitlab/bitbucket_server_import/importer.rb | 9 |
2 files changed, 15 insertions, 16 deletions
diff --git a/lib/bitbucket_server/connection.rb b/lib/bitbucket_server/connection.rb index 0e7817fc82e..853d09b776a 100644 --- a/lib/bitbucket_server/connection.rb +++ b/lib/bitbucket_server/connection.rb @@ -33,22 +33,22 @@ module BitbucketServer check_errors!(response) - response + response.parsed_response end private def check_errors!(response) - if response.code != 200 - error = - if response.parsed_response && response.parsed_response.is_a?(Hash) - sanitize(response.parsed_response.dig('errors', 0, 'message')) - end - - message = "Error #{response.code}" - message += ": #{error}" if error - raise ConnectionError, message - end + return if response.code == 200 + + details = + if response.parsed_response && response.parsed_response.is_a?(Hash) + sanitize(response.parsed_response.dig('errors', 0, 'message')) + end + + message = "Error #{response.code}" + message += ": #{details}" if details + raise ConnectionError, message end def auth diff --git a/lib/gitlab/bitbucket_server_import/importer.rb b/lib/gitlab/bitbucket_server_import/importer.rb index e948a038e8e..580dc0bb852 100644 --- a/lib/gitlab/bitbucket_server_import/importer.rb +++ b/lib/gitlab/bitbucket_server_import/importer.rb @@ -90,12 +90,11 @@ module Gitlab shas.each do |branch_name, sha| next if sha_exists?(sha) - response = client.create_branch(project_key, repository_slug, branch_name, sha) - - if response.success? + begin + client.create_branch(project_key, repository_slug, branch_name, sha) branches_created << branch_name - else - Rails.logger.warn("BitbucketServerImporter: Unable to recreate branch for SHA #{sha}: #{response.code}") + rescue BitbucketServer::Connection::ConnectionError => e + Rails.logger.warn("BitbucketServerImporter: Unable to recreate branch for SHA #{sha}: #{e}") end end end |