diff --git a/.gitea/workflows/release-tag.yml b/.gitea/workflows/release-tag.yml index 2c47dcf9..1be6e0d2 100644 --- a/.gitea/workflows/release-tag.yml +++ b/.gitea/workflows/release-tag.yml @@ -39,6 +39,15 @@ jobs: GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }} release-image: runs-on: ubuntu-latest + strategy: + matrix: + variant: + - target: basic + tag_suffix: "" + - target: dind + tag_suffix: "-dind" + - target: dind-rootless + tag_suffix: "-dind-rootless" container: image: catthehacker/ubuntu:act-latest env: @@ -62,50 +71,33 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - name: Get Meta - id: meta + - name: Repo Meta + id: repo_meta run: | echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}') >> $GITHUB_OUTPUT - echo REPO_VERSION=${GITHUB_REF_NAME#v} >> $GITHUB_OUTPUT + + - name: "Docker meta" + id: docker_meta + uses: https://github.com/docker/metadata-action@v5 + with: + images: | + ${{ env.DOCKER_ORG }}/${{ steps.repo_meta.outputs.REPO_NAME }} + tags: | + type=semver,pattern={{major}}.{{minor}}.{{patch}} + type=semver,pattern={{major}}.{{minor}} + type=semver,pattern={{major}} + flavor: | + latest=true + suffix=${{ matrix.variant.tag_suffix }},onlatest=true - name: Build and push uses: docker/build-push-action@v6 with: context: . file: ./Dockerfile - target: basic + target: ${{ matrix.variant.target }} platforms: | linux/amd64 linux/arm64 push: true - tags: | - ${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ steps.meta.outputs.REPO_VERSION }} - ${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ env.DOCKER_LATEST }} - - - name: Build and push dind - uses: docker/build-push-action@v6 - with: - context: . - file: ./Dockerfile - target: dind - platforms: | - linux/amd64 - linux/arm64 - push: true - tags: | - ${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ steps.meta.outputs.REPO_VERSION }}-dind - ${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ env.DOCKER_LATEST }}-dind - - - name: Build and push dind-rootless - uses: docker/build-push-action@v6 - with: - context: . - file: ./Dockerfile - target: dind-rootless - platforms: | - linux/amd64 - linux/arm64 - push: true - tags: | - ${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ steps.meta.outputs.REPO_VERSION }}-dind-rootless - ${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:${{ env.DOCKER_LATEST }}-dind-rootless + tags: ${{ steps.docker_meta.outputs.tags }}