Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .github/workflows/_release-please.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,15 @@ jobs:
permission-pull-requests: write
permission-issues: write

# `continue-on-error` tolerates the upstream label-application race:
# release-please-action opens the PR successfully, then immediately tries
# to apply `autorelease: pending` via GraphQL — but the PR's global node ID
# hasn't propagated yet, so GitHub returns "Could not resolve to a node".
# The PR is still created and the downstream `Find release PR number` step
# discovers it via REST, so a label-only failure should not fail the job.
- uses: googleapis/release-please-action@v5
id: release
continue-on-error: true
Comment thread
JacobPEvans marked this conversation as resolved.
with:
token: ${{ steps.app-token.outputs.token }}
manifest-file: .release-please-manifest.json
Expand All @@ -89,6 +96,12 @@ jobs:
PR_NUMBER=$(gh pr list --head "release-please--branches--${BASE_BRANCH}" --json number --jq '.[0].number // empty')
echo "number=$PR_NUMBER" >> "$GITHUB_OUTPUT"

- name: Re-fail on genuine release-please error
if: "!cancelled() && steps.release.outcome == 'failure' && steps.find-pr.outputs.number == ''"
run: |
echo "::error::release-please-action failed and no release PR was found via REST. This is a genuine failure (auth/config/API error), not a transient label-application race."
exit 1

# Disable+re-enable handles RC3 (stale auto-merge queue: PR is CLEAN with
# auto-merge enabled but GitHub never executes the merge). The retry loop
# handles RC2 (transient GraphQL errors from `gh pr merge --auto`).
Expand Down
Loading