Skip to content

pr.yaml: quote $GITHUB_OUTPUT writes (SC2086)#169

Merged
Chris-Wolfgang merged 1 commit into
mainfrom
chore/quote-github-output-sc2086
Jun 28, 2026
Merged

pr.yaml: quote $GITHUB_OUTPUT writes (SC2086)#169
Chris-Wolfgang merged 1 commit into
mainfrom
chore/quote-github-output-sc2086

Conversation

@Chris-Wolfgang

Copy link
Copy Markdown
Owner

Downstream propagation of repo-template#426.

Quotes the four bash echo ... >> $GITHUB_OUTPUT writes in pr.yaml so actionlint's shellcheck integration stops flagging SC2086 info-level findings. GitHub sets GITHUB_OUTPUT to a fixed path with no spaces or globs, so the prior form was safe in practice — but the quoted form is the universally-correct shape.

Surfaced when ETL-Csv#125 added actionlint to that repo's workflow-security check. Every fleet repo that syncs pr.yaml inherits the bug; this PR brings System.Mail-Extensions in line ahead of the next template sync.

PowerShell refs ($env:GITHUB_OUTPUT) are PowerShell syntax, not bash — shellcheck doesn't flag them and they don't need quoting.

Heads-up: pr.yaml is a protected file under its own "Detect .NET Projects" guard. Expect that check to fail on this PR; admin-bypass merge to land.

Downstream propagation of Chris-Wolfgang/repo-template#426. actionlint's
shellcheck integration flags four SC2086 info-level findings on bash
heredocs that write to $GITHUB_OUTPUT without quotes:

  Double quote to prevent globbing and word splitting

GitHub sets GITHUB_OUTPUT to a fixed path with no spaces or globs, so
the prior form was safe in practice — but the quoted form is the
universally-correct shape and matches what actionlint and shellcheck
v0.9+ keep expecting.

PowerShell refs ($env:GITHUB_OUTPUT) are PowerShell syntax inside Stage 2
Windows jobs, not bash — shellcheck doesn't flag them and they don't
need quoting.
@Chris-Wolfgang Chris-Wolfgang merged commit 29f14d4 into main Jun 28, 2026
7 of 8 checks passed
@Chris-Wolfgang Chris-Wolfgang deleted the chore/quote-github-output-sc2086 branch June 28, 2026 00:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant