+++ /dev/null
-name: docker
-
-on:
- push:
- branches:
- - "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@v3
-
- - name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v3
-
- - name: Login to DockerHub
- 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@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_prerelease
-
- - name: Image digest
- run: echo ${{ steps.docker_build.outputs.digest }}