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/workers/project_update_repository_storage_worker.rb')
-rw-r--r--app/workers/project_update_repository_storage_worker.rb16
1 files changed, 13 insertions, 3 deletions
diff --git a/app/workers/project_update_repository_storage_worker.rb b/app/workers/project_update_repository_storage_worker.rb
index ecee33e6421..5c1a8062f12 100644
--- a/app/workers/project_update_repository_storage_worker.rb
+++ b/app/workers/project_update_repository_storage_worker.rb
@@ -5,9 +5,19 @@ class ProjectUpdateRepositoryStorageWorker # rubocop:disable Scalability/Idempot
feature_category :gitaly
- def perform(project_id, new_repository_storage_key)
- project = Project.find(project_id)
+ def perform(project_id, new_repository_storage_key, repository_storage_move_id = nil)
+ repository_storage_move =
+ if repository_storage_move_id
+ ProjectRepositoryStorageMove.find(repository_storage_move_id)
+ else
+ # maintain compatibility with workers queued before release
+ project = Project.find(project_id)
+ project.repository_storage_moves.create!(
+ source_storage_name: project.repository_storage,
+ destination_storage_name: new_repository_storage_key
+ )
+ end
- ::Projects::UpdateRepositoryStorageService.new(project).execute(new_repository_storage_key)
+ ::Projects::UpdateRepositoryStorageService.new(repository_storage_move).execute
end
end