X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/e5490e96232e301e9eed971984bb75f2f87475b0..f5990e85474f7641717e70bafb797462995d974f:/.github/workflows/docker.yml diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 40b3d07..ee85823 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -3,31 +3,67 @@ name: docker on: push: branches: - - "master" + - "main" + release: + types: [published] + +permissions: + contents: read jobs: docker: + if: github.repository == 'psf/black' runs-on: ubuntu-latest steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Set up QEMU - uses: docker/setup-qemu-action@v1 + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Login to DockerHub - uses: docker/login-action@v1 + uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Check + set version tag + run: + echo "GIT_TAG=$(git describe --candidates=0 --tags 2> /dev/null || echo + latest_non_release)" >> $GITHUB_ENV + - name: Build and push - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v5 + with: + context: . + platforms: linux/amd64,linux/arm64 + push: true + tags: pyfound/black:latest,pyfound/black:${{ env.GIT_TAG }} + + - name: Build and push latest_release tag + if: + ${{ github.event_name == 'release' && github.event.action == 'published' && + !github.event.release.prerelease }} + uses: docker/build-push-action@v5 + with: + context: . + platforms: linux/amd64,linux/arm64 + push: true + tags: pyfound/black:latest_release + + - name: Build and push latest_prerelease tag + if: + ${{ github.event_name == 'release' && github.event.action == 'published' && + github.event.release.prerelease }} + uses: docker/build-push-action@v5 with: context: . platforms: linux/amd64,linux/arm64 push: true - tags: pyfound/black:latest + tags: pyfound/black:latest_prerelease - name: Image digest run: echo ${{ steps.docker_build.outputs.digest }}