name: Release on: push: tags: - "**" jobs: push-arch-linux: runs-on: ubuntu-latest-amd64 steps: - uses: actions/checkout@v4.2.2 - uses: docker/setup-qemu-action@v3.6.0 - uses: docker/setup-buildx-action@v3.10.0 - uses: docker/login-action@v3.4.0 with: registry: git.cryptic.systems username: ${{ github.repository_owner }} password: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }} - name: Build and push image run: | TAG=latest docker buildx build \ --file Dockerfile.archlinux \ --push \ --tag git.cryptic.systems/volker.raschek/ansible:${TAG}-archlinux \ . push-rocky-linux-8: runs-on: ubuntu-latest-amd64 steps: - uses: actions/checkout@v4.2.2 - uses: docker/setup-qemu-action@v3.6.0 - uses: docker/setup-buildx-action@v3.10.0 - uses: docker/login-action@v3.4.0 with: registry: git.cryptic.systems username: ${{ github.repository_owner }} password: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }} - name: Build and push image run: | TAG=latest docker buildx build \ --file Dockerfile.rockylinux8 \ --push \ --tag git.cryptic.systems/volker.raschek/ansible:${TAG}-rockylinux-8 \ . sync-to-hub-docker-io: needs: - push-arch-linux - push-rocky-linux-8 runs-on: ubuntu-latest steps: - name: Copy images to docker.io run: | TAG=$(echo ${{ github.ref_name }} | sed 's/v//gm') apt-get update --yes apt-get install --yes skopeo for suffix in archlinux rockylinux-8; do skopeo copy \ --all \ --dest-password ${{ secrets.DOCKER_IO_PASSWORD }} \ --dest-username ${{ secrets.DOCKER_IO_USERNAME }} \ --src-password ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }} \ --src-username volker.raschek \ docker://git.cryptic.systems/volker.raschek/ansible:${TAG}-${suffix} \ docker://docker.io/volkerraschek/ansible:${TAG}-${suffix} done