release:
types: [published]
+permissions:
+ contents: read
+
jobs:
docker:
if: github.repository == 'psf/black'
runs-on: ubuntu-latest
steps:
- name: Checkout
- uses: actions/checkout@v3
+ uses: actions/checkout@v4
- name: Set up QEMU
- uses: docker/setup-qemu-action@v1
+ uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v1
+ uses: docker/setup-buildx-action@v2
- name: Login to DockerHub
- uses: docker/login-action@v1
+ uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
latest_non_release)" >> $GITHUB_ENV
- name: Build and push
- uses: docker/build-push-action@v2
+ uses: docker/build-push-action@v4
with:
context: .
platforms: linux/amd64,linux/arm64
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' }}
- uses: docker/build-push-action@v2
+ if:
+ ${{ github.event_name == 'release' && github.event.action == 'published' &&
+ !github.event.release.prerelease }}
+ uses: docker/build-push-action@v4
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@v4
+ with:
+ context: .
+ platforms: linux/amd64,linux/arm64
+ push: true
+ tags: pyfound/black:latest_prerelease
+
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}