Skip to content

feat(helm): Helm chart versioning and publishing plugin - #163

Merged
mwaldheim merged 1 commit into
mainfrom
feat/helm-plugin
May 25, 2026
Merged

feat(helm): Helm chart versioning and publishing plugin#163
mwaldheim merged 1 commit into
mainfrom
feat/helm-plugin

Conversation

@mwaldheim

Copy link
Copy Markdown
Contributor

Helm chart versioning and publishing plugin

Closes #24

What's new

Adds \pkg/helm\ with chart versioning and publishing:

  • *\UpdateChartVersion(path, version, appVersion)* — updates \�ersion\ (and optionally \�ppVersion) in \Chart.yaml\ while preserving comments and field ordering
  • *\ReadChartMeta(path)* — parses Chart.yaml into \ChartMeta\ struct
  • *\Publisher.Package(ctx, chartDir, outputDir)* — runs \helm package\ and returns the path to the .tgz
  • *\Publisher.PushOCI(ctx, chartTGZ, registry)* — pushes to an OCI registry via \helm push\ (Helm 3.8+ \oci://\ protocol)
  • *\Publisher.UploadToHTTPRepo(ctx, chartTGZ)* — uploads to ChartMuseum-compatible HTTP repo with conflict detection
  • *\IsHelmAvailable()* — detects helm CLI on PATH

Tests

7 tests: version update, appVersion update, meta read, path helper, HTTP upload, conflict, availability.

Closes #24

Adds pkg/helm with chart versioning and publishing:
- UpdateChartVersion(): updates version/appVersion in Chart.yaml (preserves comments)
- ReadChartMeta(): parses Chart.yaml metadata
- Publisher.Package(): runs 'helm package'
- Publisher.PushOCI(): pushes to OCI registry via 'helm push'
- Publisher.UploadToHTTPRepo(): uploads to ChartMuseum-compatible HTTP repo
- IsHelmAvailable(): detects helm CLI
- 7 tests

Signed-off-by: mwaldheim <mwaldheim@users.noreply.github.com>
@mwaldheim
mwaldheim requested a review from tboerger as a code owner May 25, 2026 14:59
@mwaldheim
mwaldheim merged commit e3e297e into main May 25, 2026
5 of 6 checks passed
@mwaldheim
mwaldheim deleted the feat/helm-plugin branch May 25, 2026 15:01
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.

Built-in plugin: Helm chart versioning and publishing

1 participant