Skip to content

fix: pass inputs to run scripts through env - #8

Merged
tblauvvik merged 1 commit into
mainfrom
ci/env-inputs
Nov 11, 2026
Merged

tblauvvik merged 1 commit into
mainfrom
ci/env-inputs

Conversation

@tblauvvik

Copy link
Copy Markdown
Contributor

Passes action inputs to the run: scripts through env: instead of expanding ${{ inputs.* }} / ${{ steps.ip.outputs.ipv4 }} directly inside the scripts. This is GitHub's recommended pattern against script injection, and it resolves the CodeQL actions/code-injection alerts for action.yml.

What changes

  • Each run: step that used an expression now gets an env: block with the same expressions (SSH_KEY, SERVER_HOST, APP_NAME, APP_FILE, AWS_SG, RUNNER_IP, …).
  • Inside the scripts, each ${{ … }} is replaced by the matching ${VAR} at the same position, with the same quoting, so word splitting and the deploy arguments behave exactly as before.
  • No inputs, outputs, defaults or step order change. The same pattern is already used in action-deploy-jsreport.

Effect on callers

None until a new release: callers pin this action to the v1.1.0 commit. After merge, tag a new release (e.g. v1.1.1) and let Dependabot bump the pins, or bump them by hand.

🤖 Generated with Claude Code

Move ${{ inputs.* }} and ${{ steps.ip.outputs.ipv4 }} out of the run:
scripts into step-level env: variables, replacing each expression with
the matching ${VAR} at the same position and with the same quoting, so
behaviour is unchanged. Avoids script injection through action inputs
(CodeQL actions/code-injection).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@tblauvvik
tblauvvik merged commit e7e0965 into main Nov 11, 2026
2 checks passed
@tblauvvik
tblauvvik deleted the ci/env-inputs branch November 11, 2026 07:30
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