name: Release on: release: types: [published] jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Login to DockerHub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - name: Docker meta id: meta uses: docker/metadata-action@v5 with: # list of Docker images to use as base name for tags images: | ${{ github.repository }} # generate Docker tags based on the following events/attributes tags: | type=semver,pattern=v{{version}} type=semver,pattern=v{{major}}.{{minor}} type=semver,pattern=v{{major}} # always generate latest tag on push flavor: | latest=true - name: Build and push to DockerHub & GitHub Packages id: docker_build uses: docker/build-push-action@v5 with: push: true tags: ${{ steps.meta.outputs.tags }}