Repository navigation
Conversation
Replace delete + create with create --dry-run | apply (no window without a Secret, no shell interpolation of secret values) and pin dokube to a SHA. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VgoAF3w3BoRS7iBL2ShRXM
There was a problem hiding this comment.
Note
Copilot was unable to complete this review at the selected tier due to model policy or plan restrictions.
🔵 Needs a closer look
Because the change alters production deployment secret creation/update behavior, it requires a maintainer with deploy access to validate it via a real deployment run to ensure Secrets update correctly and avoid downtime or regressions.
No open issues 🎉
What changed in this PR
Hardens the GitHub Actions Kubernetes deploy workflow by sourcing secrets via environment variables and updating the target Secret in-place to avoid a delete/recreate gap.
Changes:
- Pass deploy secrets through
env:and build the secret inputs from environment variables. - Replace Secret
delete+createwithkubectl create ... --dry-run=client -o yaml | kubectl apply -f -to eliminate the missing-Secret window. - Pin
matootie/dokubeto a specific commit SHA.
| File | Description |
|---|---|
| .github/workflows/node.js.yml | Updates the deploy workflow to consume secrets via env variables, apply the Kubernetes Secret declaratively without delete/recreate, and pin the dokube action to a commit SHA. |
Review effort: Balanced
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.
Summary
The deploy job passed
${{ secrets.* }}unquoted on thekubectl create secret --from-literalcommand line, so a secret value containing shell metacharacters could break or inject into the step, and it deleted the Secret before recreating it, leaving a window with noreactibot-env.env:and are applied withkubectl create secret generic ... --dry-run=client -o yaml | kubectl apply -f -(no delete, same keys).matootie/dokubeis pinned to a commit SHA.Pre-existing, not changed here:
|| echo \nstill masks Secret failures, and older action versions that actionlint flags.Testing
actionlint: no new findings (pre-existing warnings listed above)secrets.appears only inenv:/with:main🤖 Generated with Claude Code
https://claude.ai/code/session_01VgoAF3w3BoRS7iBL2ShRXM