Skip to content

[M3] Support Helm v3 release Secret format interoperability #190

Description

@GaTTGeng

Summary

Make HelmSharp release persistence interoperable with Helm v3 release Secrets, while keeping malformed or unsupported records diagnosable.

Background

HelmReleaseStore currently persists a private JSON payload under release.json. Helm CLI stores its serialized release payload in Helm v3 release Secrets. HelmSharp therefore cannot inspect or continue releases created by Helm, and Helm cannot reliably continue releases created by HelmSharp.

Scope

  • Read Helm v3 release Secrets and map them to HelmSharp release records.
  • Persist managed release records in a Helm-compatible Secret format, names, labels, revision metadata, and status.
  • Preserve release manifest, values, chart metadata, description, notes, and hooks needed by lifecycle queries.
  • Define a migration/compatibility path for HelmSharp's existing private release.json Secrets.
  • Return actionable diagnostics for malformed, unsupported, or unreadable release records.

Acceptance criteria

  • HelmSharp can query history, status, manifest, and values for a release installed by Helm CLI.
  • A HelmSharp upgrade produces a release that Helm CLI can subsequently inspect.
  • Secret labels, names, revision sequencing, and status metadata follow Helm v3 expectations.
  • Existing HelmSharp-created Secrets continue to work or have a documented migration path.
  • Tests use fixture Secrets from Helm CLI; Helm is a test oracle only, never a runtime dependency.

Metadata

Metadata

Assignees

No one assigned

    Labels

    .NETPull requests that update .NET codeenhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions