fix(ci): parse release PR number in shell, not fromJSON in env#26
Merged
Conversation
fromJSON(steps.release.outputs.pr) in the step env crashes the entire Release
Please workflow with a template error on runs where release-please cuts the
release: there is no open PR, the pr output is empty, and fromJSON('') fails —
even though the step's if-guard would skip the step. Pass the raw output
through env and parse the number with jq inside run, which only executes when
the if-guard passes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
My earlier auto-merge change put
fromJSON(steps.release.outputs.pr).numberin the stepenv:. On runs where release-please cuts the release (no open release PR),steps.release.outputs.pris empty, sofromJSON('')throws a template error that fails the whole Release Please workflow — even though the step'sifguard would otherwise skip it:Fix
Pass the raw
proutput throughenv(a plain string, safe when empty) and parse.numberwithjqinsiderun, which only executes when theifguard passes.Note
Merging this unbreaks the workflow and lets release-please auto-merge any open release PR → tag → publish. Merge when you're ready to cut the pending release.