Repository navigation
fix(helm): support OCI chart installs - #1815
Conversation
PR Summary by QodoSupport OCI chart details and installs
AI Description
Diagram
High-Level Assessment
Files changed (2)
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
â Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want higher recall? High effort reviews run extra passes and find more bugs. A team admin can switch effort levels in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 3309c48. Configure here.
Code Review by Qodo
1.
|
| // Preserve the existing direct HTTP path. Helm's ChartDownloader loads all | ||
| // locally registered indexes and can fail because an unrelated cache entry | ||
| // is stale or missing. |
There was a problem hiding this comment.
2. Http fallback comment records history ð Rule violation â Maintainability
The comment above httpClient.Get says to preserve the existing direct HTTP path, framing the implementation in terms of its state before this change. It appears whenever maintainers inspect the non-OCI download branch and can be rewritten as a timeless explanation of why Helm's downloader is unsuitable.
Agent Prompt
## Issue description
The comment describes the direct HTTP path as `existing`, recording change history rather than only the enduring reason for the implementation.
## Fix Focus Areas
- internal/helm/client.go[3909-3911]
## Recommended Fix
Rephrase the comment without historical wording, for example: `Use direct HTTP because Helm's ChartDownloader loads all locally registered indexes and can fail when an unrelated cache entry is stale or missing.`
â Copy this prompt and use it to remediate the issue with your preferred AI generation tools
| // Preserve the existing direct HTTP path. Helm's ChartDownloader loads all | ||
| // locally registered indexes and can fail because an unrelated cache entry | ||
| // is stale or missing. | ||
| chartResp, err := httpClient.Get(chartURL) |
nadaverell
left a comment
There was a problem hiding this comment.
LGTM, tested live. made one tiny fix to handling "latest" + test for it.
Thanks for the PR!
Adds the v1.15.0 entry to the What's New catalog. This replaces #1877, which was stacked on the closed #1876; the dialog landed on main in #1902 instead. `scripts/check-whats-new.sh` (#1908) refuses to release v1.15.0 without this entry, so this must merge before the tag. ## Highlights A full-width lead card, then a 2x2 grid. Each secondary card has its own icon color, so they read apart. 1. **AI investigations that show their work** (lead, no CTA; the investigations workspace redirects home in run modes that can't host local agents). This recaps the v1.14.1 rework (#1766, #1802) on purpose: it's the first What's New dialog, and we want to put AI investigations in front of people. OpenCode (#1265) is the new v1.15 part. 2. **Full manifest diffs for Argo CD resources** (#1622) 3. **Rightsizing and cost data in MCP**: new agent tools, and risks lead before savings in the UI too (#1820, #1723) 4. **Deeper batch + AI/ML workloads support**: Kueue, JobSet and Ray pages; Job and JobSet details show why a queued job has no Pods (#1874, #1885, #1900, #1849, #1893, #1897) 5. **Canary and blue-green in Topology** (#1626) ## Also in this release Eight one-liners, paired by length because the grid fills row by row: table sort memory (#1428), OCI Helm installs (#1815), expiring TLS certificates in Checks (#1829), Radar Desktop keeping preferences across restarts (#1907), Pod vs template in Issues (#1848), PVC usage availability (#1828), Strimzi and admission webhook failures in Issues (#1840, #1830), `--listen-address` (#1845). Left out: security fixes, dependency bumps, refactors and CI, accessibility work (#1901, #1909), and narrow items (ALB action annotations, INSTALL_DIR). No usage-stats line is needed, because #1879's consent question already sits in this dialog. ## UI changes beyond the catalog - The heading names the release line (`v1.15`, via `releaseLine`), since patch releases show the same notes. The "You just updated from â to" line keeps exact versions. - An optional `tone` on highlights colors the icon tile (violet, teal, emerald, indigo). It uses Radar's existing `bg-X-500/10 text-X-600 dark:text-X-400` pattern, and was checked in light and dark themes. ## Verification - `scripts/check-whats-new.sh v1.15.0` â found notes - `make tsc` clean; What's New and usage-data tests: 39 passed - Previewed live with `VERSION=v1.15.0 make build`, opening `/?whats-new`, with #1879's consent question in place The matching public changelog is skyhook-dev/marketing#312. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Release-notes catalog and presentational What's New UI only; no auth, API, or data-handling changes. > > **Overview** > Adds the **v1.15.0** What's New catalog entry (five highlights with CTAs where appropriate, plus eight improvement one-liners) so `check-whats-new` can ship the tag. > > The dialog heading now shows the **minor release line** via new `releaseLine()` (e.g. `v1.15` instead of `v1.15.0`), while the upgrade subtitle still uses exact versions. Secondary highlight cards can set an optional **`tone`** (violet, teal, emerald, indigo) for distinct icon tiles; the lead card stays on the accent style. > > Tests cover `releaseLine` and the preview dialog title expectation. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit f0038c3. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY -->

Summary
This extracts the self-contained OCI install gap identified by hisco during review of #1646.
Tests
Note
Medium Risk
Changes cluster install and chart-fetch paths and OCI registry auth/timeout behavior; mistakes could break installs or pull wrong chart versions, though HTTP-only flows are preserved and tests are extensive.
Overview
Adds OCI Helm chart support for chart detail, install (with progress), and index entries that point at
oci://URLs.Centralizes resolution in
resolveOCIChartURL(prefix vs full tag/digest refs) andlocateChartPath, which wires Helmâs registry client from existinghelm registry logincredentials and maps OCIlatestto an empty version for tag resolution. Chart pulls usenewRegistryClientForChartPull(no probe timeout); synchronous registry probes keep the short timeout.GetChartDetailand install paths branch on OCI repositories; non-OCI installs still use the direct HTTP download path to avoid stale local index cache failures. AchartPathLocatorhook supports tests; newoci_install_test.gocovers URL resolution, install/detail/progress flows, pre-install rejection, and live registry tag selection.Reviewed by Cursor Bugbot for commit a37624a. Bugbot is set up for automated code reviews on this repo. Configure here.