diff options
author | Giorgenes Gelatti <ggelatti@gitlab.com> | 2019-07-18 15:24:40 +1000 |
---|---|---|
committer | Nathan Friend <nathan@gitlab.com> | 2019-07-30 13:49:47 -0300 |
commit | 0426d15c080255a97297a2d45fbc4e8c5d119124 (patch) | |
tree | fcdad12725b7e47a7cc32eb305a770111f7dbf23 /app/controllers/projects/registry | |
parent | 15bda06cab075f2365830a2808836516f6c25590 (diff) | |
download | gitlab-ce-0426d15c080255a97297a2d45fbc4e8c5d119124.tar.gz |
Support bulk registry tag delete
Diffstat (limited to 'app/controllers/projects/registry')
-rw-r--r-- | app/controllers/projects/registry/tags_controller.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/app/controllers/projects/registry/tags_controller.rb b/app/controllers/projects/registry/tags_controller.rb index bf1d8d8b5fc..22c87dfe1c0 100644 --- a/app/controllers/projects/registry/tags_controller.rb +++ b/app/controllers/projects/registry/tags_controller.rb @@ -28,6 +28,21 @@ module Projects end end + def bulk_destroy + @tags = (params[:ids] || []).map { |tag_name| image.tag(tag_name) } + + success_count = 0 + @tags.each do |tag| + if tag.delete + success_count += 1 + end + end + + respond_to do |format| + format.json { head(success_count == @tags.size ? :no_content : :bad_request) } + end + end + private def tags |