From 865bb64a06f33b1076d1b9a202cd41c7ad0728c5 Mon Sep 17 00:00:00 2001 From: James Lopez Date: Fri, 26 Jan 2018 10:43:13 +0100 Subject: disable retry attempts for Import/Export until that is fixed --- app/models/project.rb | 2 ++ app/workers/repository_import_worker.rb | 11 ++++++++++- lib/gitlab/import_export/shared.rb | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/app/models/project.rb b/app/models/project.rb index e19873f64ce..8a5895cea05 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -568,6 +568,8 @@ class Project < ActiveRecord::Base RepositoryForkWorker.perform_async(id, forked_from_project.repository_storage_path, forked_from_project.disk_path) + elsif gitlab_project_import? + RepositoryImportWorker.set(retry: false).perform_async(self.id) else RepositoryImportWorker.perform_async(self.id) end diff --git a/app/workers/repository_import_worker.rb b/app/workers/repository_import_worker.rb index 31e2798c36b..1a8be9d9a93 100644 --- a/app/workers/repository_import_worker.rb +++ b/app/workers/repository_import_worker.rb @@ -20,7 +20,12 @@ class RepositoryImportWorker # to those importers to mark the import process as complete. return if service.async? - raise result[:message] if result[:status] == :error + if result[:status] == :error + + fail_import(project, result[:message]) if project.gitlab_project_import? + + raise result[:message] + end project.after_import end @@ -33,4 +38,8 @@ class RepositoryImportWorker Rails.logger.info("Project #{project.full_path} was in inconsistent state (#{project.import_status}) while importing.") false end + + def fail_import(project, message) + project.mark_import_as_failed(message) + end end diff --git a/lib/gitlab/import_export/shared.rb b/lib/gitlab/import_export/shared.rb index d03cbc880fd..71aec88a033 100644 --- a/lib/gitlab/import_export/shared.rb +++ b/lib/gitlab/import_export/shared.rb @@ -20,7 +20,7 @@ module Gitlab error_out(error.message, caller[0].dup) @errors << error.message # Debug: - Rails.logger.error(error.backtrace.join("\n")) + Rails.logger.error(error.backtrace&.join("\n")) end private -- cgit v1.2.1