Repository navigation
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6e3bc233e4
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| run: | | ||
| set -euo pipefail | ||
| # Skip subcharts that `helm dependency build` vendors into <chart>/charts/. | ||
| charts=$(find "$CHARTS_PATH" -name Chart.yaml -not -path "$CHARTS_PATH/*/charts/*" -exec dirname {} \; | sort) |
There was a problem hiding this comment.
Prune vendored subcharts directly below the search root
When chartsPath is itself a chart directory, an unpacked dependency at <chartsPath>/charts/dep/Chart.yaml does not match this exclusion because the pattern requires an additional component before /charts/. The dependency is therefore processed as a top-level chart, which can duplicate validation or fail when the subchart relies on values supplied by its parent; prune every charts/ subtree, including the one directly below CHARTS_PATH.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
🟡 Changes recommended
Chart discovery can incorrectly include vendored dependencies and exclude genuine charts, causing lint or render failures and incomplete validation.
1 open issue
What changed in this PR
Adds a reusable Helm validation workflow to the Kubernetes CI pipelines, giving chart-only pull requests relevant checks.
Changes:
- Adds configurable runner, timeout, and chart search path inputs.
- Discovers charts, builds dependencies, and runs Helm lint and template checks.
- Skips rendering library charts and fails when no charts are found.
| File | Description |
|---|---|
.github/workflows/helm.yaml |
Adds the reusable chart discovery, linting, and rendering workflow. |
Review effort: Balanced
| run: | | ||
| set -euo pipefail | ||
| # Skip subcharts that `helm dependency build` vendors into <chart>/charts/. | ||
| charts=$(find "$CHARTS_PATH" -name Chart.yaml -not -path "$CHARTS_PATH/*/charts/*" -exec dirname {} \; | sort) |

Summary
Part of INF-4419 (SOC 2 CHG-1). A reusable workflow that validates Helm charts, so a chart-only PR is checked by something that looks at the chart. Today it either skips the tests or runs unrelated ones.
Description
.github/workflows/helm.yaml(workflow_call):chartsPath(default.chart), i.e. every directory with aChart.yaml. Subcharts vendored into<chart>/charts/are skipped.helm dependency build,helm lint, andhelm template(skipped fortype: librarycharts, which render nothing).runner,timeoutMinutes,chartsPath.Usage:
A run takes about 15 seconds, so callers can run it on every PR and add it to their
ci_check_resultgate'sneedswithout a path filter.Testing
The script ran locally against
mainof 9 repos, and all passed:parcellab.chart.chart.chartA broken
values.yamlfails the run (cannot load values.yaml).Release
Non-breaking addition, so publish the draft as v9.3.0 (release-drafter proposes the next patch). The major-tag workflow then moves
v9.