docker_clean.yml
1 name: Docker Clean 2 3 on: delete 4 5 jobs: 6 clean: 7 if: ${{ github.event.ref_type == 'branch' }} 8 runs-on: ubuntu-latest 9 10 steps: 11 - env: 12 TOKEN: ${{ secrets.CR_PAT }} 13 USER: "users/defelo" 14 NAME: "pycrypcli" 15 BRANCH: ${{ github.event.ref }} 16 run: | 17 set -ex 18 19 AUTH="Authorization: Bearer ${TOKEN}" 20 URL="https://api.github.com/${USER}/packages/container/${NAME}/versions" 21 branch=$(echo $BRANCH | tr / -) 22 23 for version in $(curl -H "${AUTH}" "${URL}" | jq -c ".[] | select((.metadata.container.tags - (.metadata.container.tags - (\"$branch $branch-linux-amd64 $branch-linux-arm-v7 $branch-linux-arm64-v8\" | split(\" \"))))!=[])"); do 24 id=$(echo "${version}" | jq -r .id) 25 name=$(echo "${version}" | jq -r .name) 26 echo pruning $id $name 27 curl -X DELETE -H "${AUTH}" "${URL}/${id}" 28 done