Skip to content

fix(ci): pass release-notes vars via env, not ${{ }} shell interpolation - #165

Merged
jakub-przepiora merged 1 commit into
mainfrom
develop
Jun 30, 2026
Merged

jakub-przepiora merged 1 commit into
mainfrom
develop

Conversation

@jakub-przepiora

@jakub-przepiora jakub-przepiora commented Jun 30, 2026 •

Copy link
Copy Markdown
Contributor

The Release workflow inlined LOG="${{ steps.changelog.outputs.log }}" (and the dispatch notes input) directly into the script body, so commit messages containing double quotes broke out of the shell string — e.g. a commit titled ... "Components & serials used" ... made bash run serials as a command and the whole release failed with exit 127 ("serials: command not found"), so no ZIP was attached. Pass VERSION/CUSTOM/LOG through env: instead; bash reads the values verbatim without re-parsing quotes/backticks.

Summary

Type of change

  • Bug fix
  • New feature
  • Refactor / cleanup
  • Documentation
  • Other:

Related issue

Closes #

Testing

  • Tested manually in browser
  • php artisan test passes
  • Tested as Operator / Supervisor / Admin role (if UI change)

Checklist

  • No .env secrets committed
  • Migration added if schema changed
  • $fillable updated if new model columns added
  • No raw SQL with user input (use Eloquent / Query Builder)
  • CSRF protection in place for any new forms
  • composer audit clean

Summary by CodeRabbit

  • Chores
    • Improved the release-notes generation workflow so it handles special characters in commit messages and notes more reliably.
    • Updated how release-related values are passed into the step to make the process more stable and consistent.

The Release workflow inlined `LOG="${{ steps.changelog.outputs.log }}"` (and the
dispatch `notes` input) directly into the script body, so commit messages
containing double quotes broke out of the shell string — e.g. a commit titled
... "Components & serials used" ... made bash run `serials` as a command and the
whole release failed with exit 127 ("serials: command not found"), so no ZIP was
attached. Pass VERSION/CUSTOM/LOG through `env:` instead; bash reads the values
verbatim without re-parsing quotes/backticks.
@coderabbitai

coderabbitai Bot commented Jun 30, 2026 •

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: df38b9bc-7d38-4678-a42b-dfa3e3d62e7e

📥 Commits

Reviewing files that changed from the base of the PR and between b789673 and 62a281d.

📒 Files selected for processing (1)
  • .github/workflows/release.yml

📝 Walkthrough

Walkthrough

The "Build release notes" workflow step moves VERSION, CUSTOM, and LOG variable assignments from inline ${{ }} interpolation inside the shell script body into a dedicated env: block, adding comments explaining the rationale.

Changes

Release Workflow Env Fix

Layer / File(s) Summary
Build release notes env: block
.github/workflows/release.yml
VERSION, CUSTOM, and LOG are now declared in an env: block on the step rather than assigned inline in the run script body; comments are added explaining that this avoids breakage from quotes or backticks in commit messages.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

A rabbit once tripped on a backtick, oh my,
The release notes broke with a sad little cry.
So we moved all the vars to env: with care,
No more inline gremlins lurking in there.
Hop hop, the pipeline runs smooth through the air! 🐇

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main CI change: moving release-notes variables from shell interpolation to environment variables.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch develop

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@jakub-przepiora
jakub-przepiora merged commit b0ef2c8 into main Jun 30, 2026
4 checks passed
@jakub-przepiora jakub-przepiora mentioned this pull request Jun 30, 2026
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