From 598fa83e251b9fd379d71caddd703a2078755528 Mon Sep 17 00:00:00 2001 From: Jan Provaznik <jprovaznik@gitlab.com> Date: Fri, 6 Jul 2018 15:08:27 +0000 Subject: [PATCH] Delete deprecated object_storage_upload queue --- app/workers/all_queues.yml | 1 - app/workers/object_storage_upload_worker.rb | 23 ---- .../jprovazn-delete-upload-worker.yml | 5 + spec/models/ci/job_artifact_spec.rb | 2 +- .../object_storage_upload_worker_spec.rb | 108 ------------------ 5 files changed, 6 insertions(+), 133 deletions(-) delete mode 100644 app/workers/object_storage_upload_worker.rb create mode 100644 changelogs/unreleased/jprovazn-delete-upload-worker.yml delete mode 100644 spec/workers/object_storage_upload_worker_spec.rb diff --git a/app/workers/all_queues.yml b/app/workers/all_queues.yml index b8b854853b7fc..d4be1ccfcfa1e 100644 --- a/app/workers/all_queues.yml +++ b/app/workers/all_queues.yml @@ -46,7 +46,6 @@ - mail_scheduler:mail_scheduler_issue_due - mail_scheduler:mail_scheduler_notification_service -- object_storage_upload - object_storage:object_storage_background_move - object_storage:object_storage_migrate_uploads diff --git a/app/workers/object_storage_upload_worker.rb b/app/workers/object_storage_upload_worker.rb deleted file mode 100644 index f17980a83d883..0000000000000 --- a/app/workers/object_storage_upload_worker.rb +++ /dev/null @@ -1,23 +0,0 @@ -# frozen_string_literal: true - -# @Deprecated - remove once the `object_storage_upload` queue is empty -# The queue has been renamed `object_storage:object_storage_background_upload` -# -class ObjectStorageUploadWorker - include ApplicationWorker - - sidekiq_options retry: 5 - - def perform(uploader_class_name, subject_class_name, file_field, subject_id) - uploader_class = uploader_class_name.constantize - subject_class = subject_class_name.constantize - - return unless uploader_class < ObjectStorage::Concern - return unless uploader_class.object_store_enabled? - return unless uploader_class.background_upload_enabled? - - subject = subject_class.find(subject_id) - uploader = subject.public_send(file_field) # rubocop:disable GitlabSecurity/PublicSend - uploader.migrate!(ObjectStorage::Store::REMOTE) - end -end diff --git a/changelogs/unreleased/jprovazn-delete-upload-worker.yml b/changelogs/unreleased/jprovazn-delete-upload-worker.yml new file mode 100644 index 0000000000000..52916482d3295 --- /dev/null +++ b/changelogs/unreleased/jprovazn-delete-upload-worker.yml @@ -0,0 +1,5 @@ +--- +title: Remove deprecated object_storage_upload queue. +merge_request: +author: +type: removed diff --git a/spec/models/ci/job_artifact_spec.rb b/spec/models/ci/job_artifact_spec.rb index efddd4e766269..2f87fb5f25dee 100644 --- a/spec/models/ci/job_artifact_spec.rb +++ b/spec/models/ci/job_artifact_spec.rb @@ -25,7 +25,7 @@ end it 'does not schedule the migration' do - expect(ObjectStorageUploadWorker).not_to receive(:perform_async) + expect(ObjectStorage::BackgroundMoveWorker).not_to receive(:perform_async) subject end diff --git a/spec/workers/object_storage_upload_worker_spec.rb b/spec/workers/object_storage_upload_worker_spec.rb deleted file mode 100644 index 32ddcbe97577f..0000000000000 --- a/spec/workers/object_storage_upload_worker_spec.rb +++ /dev/null @@ -1,108 +0,0 @@ -require 'spec_helper' - -describe ObjectStorageUploadWorker do - let(:local) { ObjectStorage::Store::LOCAL } - let(:remote) { ObjectStorage::Store::REMOTE } - - def perform - described_class.perform_async(uploader_class.name, subject_class, file_field, subject_id) - end - - context 'for LFS' do - let!(:lfs_object) { create(:lfs_object, :with_file, file_store: local) } - let(:uploader_class) { LfsObjectUploader } - let(:subject_class) { LfsObject } - let(:file_field) { :file } - let(:subject_id) { lfs_object.id } - - context 'when object storage is enabled' do - before do - stub_lfs_object_storage(background_upload: true) - end - - it 'uploads object to storage' do - expect { perform }.to change { lfs_object.reload.file_store }.from(local).to(remote) - end - - context 'when background upload is disabled' do - before do - allow(Gitlab.config.lfs.object_store).to receive(:background_upload) { false } - end - - it 'is skipped' do - expect { perform }.not_to change { lfs_object.reload.file_store } - end - end - end - - context 'when object storage is disabled' do - before do - stub_lfs_object_storage(enabled: false) - end - - it "doesn't migrate files" do - perform - - expect(lfs_object.reload.file_store).to eq(local) - end - end - end - - context 'for legacy artifacts' do - let(:build) { create(:ci_build, :legacy_artifacts) } - let(:uploader_class) { LegacyArtifactUploader } - let(:subject_class) { Ci::Build } - let(:file_field) { :artifacts_file } - let(:subject_id) { build.id } - - context 'when local storage is used' do - let(:store) { local } - - context 'and remote storage is defined' do - before do - stub_artifacts_object_storage(background_upload: true) - end - - it "migrates file to remote storage" do - perform - - expect(build.reload.artifacts_file_store).to eq(remote) - end - - context 'for artifacts_metadata' do - let(:file_field) { :artifacts_metadata } - - it 'migrates metadata to remote storage' do - perform - - expect(build.reload.artifacts_metadata_store).to eq(remote) - end - end - end - end - end - - context 'for job artifacts' do - let(:artifact) { create(:ci_job_artifact, :archive) } - let(:uploader_class) { JobArtifactUploader } - let(:subject_class) { Ci::JobArtifact } - let(:file_field) { :file } - let(:subject_id) { artifact.id } - - context 'when local storage is used' do - let(:store) { local } - - context 'and remote storage is defined' do - before do - stub_artifacts_object_storage(background_upload: true) - end - - it "migrates file to remote storage" do - perform - - expect(artifact.reload.file_store).to eq(remote) - end - end - end - end -end -- GitLab