From 481ce38934922222c4d4054aed9c781583895723 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Ch=C4=99ci=C5=84ski?= Date: Wed, 21 Dec 2022 17:47:23 +0100 Subject: [PATCH] Fix failing ACR purge workflow (#2511) * Fix failing ACR purge workflow * Coment out prod for testing * Enable prod after testing --- .../workflows/container-registry-purge.yml | 33 ++++++++++++++++--- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/.github/workflows/container-registry-purge.yml b/.github/workflows/container-registry-purge.yml index 7bb1d69288..8c9db2cbbd 100644 --- a/.github/workflows/container-registry-purge.yml +++ b/.github/workflows/container-registry-purge.yml @@ -39,18 +39,43 @@ jobs: REPO_LIST=$(az acr repository list -n $REGISTRY -o tsv) for REPO in $REPO_LIST do + + PURGE_LATEST="" + PURGE_VERSION="" + PURGE_ELSE="" + TAG_LIST=$(az acr repository show-tags -n $REGISTRY --repository $REPO -o tsv) for TAG in $TAG_LIST do if [ $TAG = "latest" ] || [ $TAG = "dev" ]; then - PURGE_CMD="acr purge --filter '$REPO:$TAG' --ago $AGO_DUR_VER --untagged --keep 1" + PURGE_LATEST+="--filter '$REPO:$TAG' " elif [[ $TAG =~ [0-9]+\.[0-9]+\.[0-9]+ ]]; then - PURGE_CMD="acr purge --filter '$REPO:$TAG' --ago $AGO_DUR_VER --untagged" + PURGE_VERSION+="--filter '$REPO:$TAG' " else - PURGE_CMD="acr purge --filter '$REPO:$TAG' --ago $AGO_DUR --untagged" + PURGE_ELSE+="--filter '$REPO:$TAG' " fi - az acr run --cmd "$PURGE_CMD" --registry $REGISTRY /dev/null done + + if [ ! -z "$PURGE_LATEST" ] + then + PURGE_LATEST_CMD="acr purge $PURGE_LATEST --ago $AGO_DUR_VER --untagged --keep 1" + az acr run --cmd "$PURGE_LATEST_CMD" --registry $REGISTRY /dev/null & + fi + + if [ ! -z "$PURGE_VERSION" ] + then + PURGE_VERSION_CMD="acr purge $PURGE_VERSION --ago $AGO_DUR_VER --untagged" + az acr run --cmd "$PURGE_VERSION_CMD" --registry $REGISTRY /dev/null & + fi + + if [ ! -z "$PURGE_ELSE" ] + then + PURGE_ELSE_CMD="acr purge $PURGE_ELSE --ago $AGO_DUR --untagged" + az acr run --cmd "$PURGE_ELSE_CMD" --registry $REGISTRY /dev/null & + fi + + wait + done