diff options
-rw-r--r-- | app/services/projects/destroy_service.rb | 1 | ||||
-rw-r--r-- | changelogs/unreleased/sh-disable-registry-delete.yml | 5 | ||||
-rw-r--r-- | spec/services/projects/destroy_service_spec.rb | 12 |
3 files changed, 18 insertions, 0 deletions
diff --git a/app/services/projects/destroy_service.rb b/app/services/projects/destroy_service.rb index a1279bfb3a3..5893b8eedff 100644 --- a/app/services/projects/destroy_service.rb +++ b/app/services/projects/destroy_service.rb @@ -173,6 +173,7 @@ module Projects end def remove_registry_tags + return true unless Gitlab.config.registry.enabled return false unless remove_legacy_registry_tags project.container_repositories.find_each do |container_repository| diff --git a/changelogs/unreleased/sh-disable-registry-delete.yml b/changelogs/unreleased/sh-disable-registry-delete.yml new file mode 100644 index 00000000000..180b983e07c --- /dev/null +++ b/changelogs/unreleased/sh-disable-registry-delete.yml @@ -0,0 +1,5 @@ +--- +title: Don't attempt to contact registry if it is disabled +merge_request: 31553 +author: +type: fixed diff --git a/spec/services/projects/destroy_service_spec.rb b/spec/services/projects/destroy_service_spec.rb index e436af77ed4..9a6f64b825a 100644 --- a/spec/services/projects/destroy_service_spec.rb +++ b/spec/services/projects/destroy_service_spec.rb @@ -241,6 +241,18 @@ describe Projects::DestroyService do expect(destroy_project(project, user)).to be false end end + + context 'when registry is disabled' do + before do + stub_container_registry_config(enabled: false) + end + + it 'does not attempting to remove any tags' do + expect(Projects::ContainerRepository::DestroyService).not_to receive(:new) + + destroy_project(project, user) + end + end end context 'when there are tags for legacy root repository' do |