From 9e86b88820d49709832d8636c4420f3ce611fc07 Mon Sep 17 00:00:00 2001 From: Gibson Chikafa Date: Fri, 4 Aug 2023 08:57:10 +0200 Subject: [PATCH 1/2] Delete project docker images from registry with tags --- templates/default/dockerImage.sh.erb | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/templates/default/dockerImage.sh.erb b/templates/default/dockerImage.sh.erb index c10f920d8..eb9280f26 100644 --- a/templates/default/dockerImage.sh.erb +++ b/templates/default/dockerImage.sh.erb @@ -50,6 +50,18 @@ elif [ "$1" == "gc" ] ; then docker exec registry bin/registry garbage-collect /etc/docker/registry/config.yml -m docker container restart registry +elif ["$1" == "delete-with-tags"]; then + REPO_NAME=$2 + TAGS_STR=$3 + read -ra TAGS <<< $(echo "$TAGS_STR" | tr ',' ' ') + for TAG in "${TAGS[@]}"; do + # get the digest + DIGEST=$(curl -g -k -sSL -I \ + -H "Accept: application/vnd.docker.distribution.manifest.v2+json" \ + "https://$REGISTRY_URL/v2/$REPO_NAME/manifests/$TAG" | awk '$1 == "docker-content-digest:" { print $2 }' | tr -d $'\r') + # delete the manifest + curl -g -k -v -sSL -X DELETE "https://${REGISTRY_URL}/v2/$REPO_NAME/manifests/${DIGEST}" + done <% else -%> elif [ "$1" == "delete-acr" ] ; then From 2c0a33b3f4c9e7279ccf71c13ffe259c84cdfebe Mon Sep 17 00:00:00 2001 From: Gibson Chikafa Date: Mon, 7 Aug 2023 06:53:30 +0200 Subject: [PATCH 2/2] Fix --- templates/default/dockerImage.sh.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/default/dockerImage.sh.erb b/templates/default/dockerImage.sh.erb index eb9280f26..a7f444742 100644 --- a/templates/default/dockerImage.sh.erb +++ b/templates/default/dockerImage.sh.erb @@ -50,7 +50,7 @@ elif [ "$1" == "gc" ] ; then docker exec registry bin/registry garbage-collect /etc/docker/registry/config.yml -m docker container restart registry -elif ["$1" == "delete-with-tags"]; then +elif [ "$1" == "delete-with-tags" ] ; then REPO_NAME=$2 TAGS_STR=$3 read -ra TAGS <<< $(echo "$TAGS_STR" | tr ',' ' ')