mirror of
https://github.com/edgelesssys/constellation.git
synced 2024-10-01 01:36:09 -04:00
ci: delete old images from main ref
Signed-off-by: Paul Meyer <49727155+katexochen@users.noreply.github.com>
This commit is contained in:
parent
4a6c64a02f
commit
d37bd077d8
67
.github/workflows/purge-main.yml
vendored
Normal file
67
.github/workflows/purge-main.yml
vendored
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
name: Purge old images from main branch
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
schedule:
|
||||||
|
- cron: "0 */2 * * *"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
find-version:
|
||||||
|
name: Delete version from main ref
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
outputs:
|
||||||
|
version: ${{ steps.find.outputs.version }}
|
||||||
|
permissions:
|
||||||
|
id-token: write
|
||||||
|
contents: read
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
|
||||||
|
with:
|
||||||
|
ref: ${{ github.head_ref }}
|
||||||
|
|
||||||
|
- name: Login to AWS
|
||||||
|
uses: aws-actions/configure-aws-credentials@67fbcbb121271f7775d2e7715933280b06314838 # v1.7.0
|
||||||
|
with:
|
||||||
|
role-to-assume: arn:aws:iam::795746500882:role/GithubConstellationVersionsAPIRead
|
||||||
|
aws-region: eu-central-1
|
||||||
|
|
||||||
|
- name: List versions
|
||||||
|
id: list
|
||||||
|
uses: ./.github/actions/versionsapi
|
||||||
|
with:
|
||||||
|
command: list
|
||||||
|
ref: main
|
||||||
|
stream: debug
|
||||||
|
|
||||||
|
- name: Find version to delete
|
||||||
|
id: find
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
versions=$(cat versionsapi_output.txt)
|
||||||
|
echo "Found versions:"
|
||||||
|
echo "${versions}"
|
||||||
|
|
||||||
|
echo "Newest 10 versions shouldn't be deleted"
|
||||||
|
deletable=$(echo "${versions}" | head -n -10)
|
||||||
|
if [ -z "${deletable}" ]; then
|
||||||
|
echo "No deletable versions found"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
echo "Found deletable versions:"
|
||||||
|
echo "${deletable}"
|
||||||
|
|
||||||
|
ver=$(echo "${deletable}" | head -n 1)
|
||||||
|
echo "Deleting oldest version: ${ver}"
|
||||||
|
echo "version=${ver}" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
|
delete:
|
||||||
|
name: Delete version
|
||||||
|
if: needs.find-version.outputs.version != ''
|
||||||
|
uses: ./.github/workflows/versionsapi.yml
|
||||||
|
needs: find-version
|
||||||
|
secrets: inherit
|
||||||
|
with:
|
||||||
|
command: remove
|
||||||
|
dryrun: true
|
||||||
|
version_path: ${{ needs.find-version.outputs.version }}
|
Loading…
Reference in New Issue
Block a user