Kubernetes deployment service
Use HelmSharp.Action when your service owns release lifecycle operations and the Kubernetes identity used to perform them.
Service responsibilities
A deployment service chooses the chart version and namespace, supplies Kubernetes credentials, applies an authorization policy, persists operation diagnostics, and exposes status/history to callers. HelmClient performs the Helm-style lifecycle work inside that boundary.
Recommended flow
- Resolve a chart and values from trusted, versioned application records.
- Create a
HelmUpgradeInstallRequestwith explicit namespace, wait, timeout, and hook policy. - Run a dry run for an operator preview when appropriate.
- Rebuild the apply request from recorded inputs; do not reuse a mutable preview request.
- Read
CommandResultand release history for the operation record.
Start with Install and upgrade releases. For an approval system, use Turn a review into a deployment, which covers release-state checks and immutable inputs.
When not to use this layer
If another controller owns cluster mutation, render manifests for that controller instead. See Generate manifests for GitOps.