diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 11d6874..4ddeede 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -140,6 +140,28 @@ jobs: target-branch: ${{ github.ref_name }} skip-github-pull-request: true + # A push that lands while the release above is running is gated out of `release-pr`, + # and nothing re-runs that half once the tag exists, so those commits would sit + # unreleased until the next unrelated push. Run it again now that the walk has a + # release commit to stop at. + release-pr-followup: + name: Release PR (after tagging) + needs: release + if: needs.release.outputs.release_created == 'true' + runs-on: ubuntu-latest + timeout-minutes: 5 + permissions: + contents: write + issues: write + pull-requests: write + steps: + - uses: googleapis/release-please-action@v4 + with: + config-file: release-please-config.json + manifest-file: .release-please-manifest.json + target-branch: ${{ github.ref_name }} + skip-github-release: true + # Chained rather than triggered on the release event, because a GitHub Release # created with GITHUB_TOKEN starts no new workflow run. Also reachable on its own # through workflow_dispatch with publish_tag, which is the recovery path once