Skip to content

DEVOPS-3406 - inject required secret keys only - #3

Closed
raul-gherman-modaoperandi wants to merge 1 commit into
devfrom
DEVOPS-3406
Closed

DEVOPS-3406 - inject required secret keys only#3
raul-gherman-modaoperandi wants to merge 1 commit into
devfrom
DEVOPS-3406

Conversation

@raul-gherman-modaoperandi

Copy link
Copy Markdown

No description provided.

Copilot AI balanced review requested due to automatic review settings September 9, 2026 12:21

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The unsupported ESO field blocks Secret materialization and requires valid implementation and integration coverage.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Updates Helm ExternalSecret handling so only boot-critical secrets are required.

Changes:

  • Marks 17 non-critical secret references optional.
  • Updates Helm rendering assertions.
  • Documents required and optional keys.
File summaries
File Review
packaging/helm/openwork-ee/tests/external-secrets.sh Rendering assertions do not validate ESO synchronization with an absent optional key. Moderate (2 votes)
packaging/helm/openwork-ee/templates/externalsecret.yaml Emits unsupported remoteRef.optional, causing Kubernetes rejection. Critical (2 votes)
packaging/helm/openwork-ee/README.md Documents unsupported behavior and conflicts with values.yaml guidance. Two nits (1 vote each)
Review details

Suppressed comments (2)

packaging/helm/openwork-ee/README.md:364

  • This documents remoteRef.optional as supported since ESO 0.5.3, but that field is absent from both the v1beta1 and v1 ExternalSecret CRD schemas. Following this guidance produces a resource Kubernetes rejects rather than a Secret with omitted keys; revise the documentation once the implementation uses a supported optional-key mechanism.
missing one fails the ExternalSecret loudly. Every other `secret.keys.*` entry
is rendered `optional: true` (requires ESO ≥ 0.5.3), so a missing optional key
(`DAYTONA_API_KEY`, `SMTP_PASS`, ...) does not block the Secret — ESO skips it
and the app reads it as unset. Key names must match `secret.keys.*` values;

packaging/helm/openwork-ee/README.md:354

  • This new guidance contradicts the chart's user-facing comments in values.yaml:246-248 and values.yaml:266-269, which still say every secret.keys.* entry must exist. Update those comments in this PR so operators configuring the chart do not receive mutually exclusive requirements.
  # The three boot-critical keys must exist under this trunk, e.g.
  # eks/openwork/prod/den/DATABASE_URL. All other keys are optional.
  • Files reviewed: 3/3 changed files
  • Comments generated: 2
  • Review effort level: Balanced

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +50 to +51
{{- if not (has $name $requiredKeys) }}
optional: true
Comment on lines +94 to +96
# Only the three boot-critical keys are required in the provider; the other 17
# are optional so a missing optional key does not block the whole Secret.
assert_count "$enabled_rendered" 'optional: true' 17
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.

2 participants