diff options
author | Stan Hu <stanhu@gmail.com> | 2019-08-06 13:36:07 -0700 |
---|---|---|
committer | Stan Hu <stanhu@gmail.com> | 2019-08-06 13:44:26 -0700 |
commit | 35ce4820f24c15a5c7bdb111d73a90fd9bea2655 (patch) | |
tree | 756a3073eee14f720e1cfd82c3766b62209eaf10 | |
parent | 921611d19dff9aed8d4c35edd0578614630a01c8 (diff) | |
download | gitlab-ce-sh-disable-registry-delete.tar.gz |
Don't attempt to contact registry if it is disabledsh-disable-registry-delete
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/21679 moved the
deletion of registry tags outside of a transaction, but introduced an
issue where Sidekiq would attempt to contact the container registry
during project destruction even if it were disabled.
Relates to:
* https://gitlab.com/charts/gitlab/issues/1455
* https://gitlab.com/gitlab-org/gitlab-ce/issues/45941
-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 |