diff --git a/.github/workflows/publish-docker.yml b/.github/workflows/publish-docker.yml index 2a75812..9110548 100644 --- a/.github/workflows/publish-docker.yml +++ b/.github/workflows/publish-docker.yml @@ -7,6 +7,7 @@ on: pull_request: branches: - main + workflow_dispatch: env: REGISTRY: ghcr.io diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 45879fb..ed743d9 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -10,6 +10,7 @@ jobs: permissions: contents: write id-token: write + actions: write steps: - uses: actions/checkout@v4 with: { fetch-depth: 0 } @@ -81,6 +82,17 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Trigger Docker publish workflow + # GitHub's anti-recursion rule: tags pushed by GITHUB_TOKEN do NOT + # trigger downstream workflows. Explicitly dispatch publish-docker.yml + # so the GHCR image actually gets built on every release. + if: steps.check.outputs.published == 'false' + run: | + TAG="v${{ steps.check.outputs.version }}" + gh workflow run publish-docker.yml --ref "${TAG}" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Notify Slack if: steps.check.outputs.published == 'false' run: |