Versions in this module Expand all Collapse all v1 v1.0.9 May 24, 2026 v1.0.8 May 11, 2026 v1.0.7 May 11, 2026 Changes in this version + const ServerDryRunClassAPIError + const ServerDryRunClassAPIMappingMissing + const ServerDryRunClassAdmissionDenied + const ServerDryRunClassFieldOwnershipConflict + const ServerDryRunClassImmutableField + const ServerDryRunClassNamespaceMissing + const ServerDryRunClassNone + const ServerDryRunStatusFailed + const ServerDryRunStatusPassed + const ServerDryRunStatusSkipped + func ClassifyServerDryRunError(err error, kind string) (class, reason, message string) + type ServerDryRunReport struct + FieldManager string + Force bool + Results []ServerDryRunResult + Summary ServerDryRunSummary + Version string + func RunServerDryRunReport(ctx context.Context, client *kube.Client, proposedManifest string, ...) (*ServerDryRunReport, error) + type ServerDryRunResource struct + Group string + Kind string + Name string + Namespace string + Version string + type ServerDryRunResult struct + DryRun bool + ErrorClass string + Hook string + Message string + Operation string + Reason string + Resource ServerDryRunResource + Status string + type ServerDryRunSummary struct + APIMapperMissing int + AdmissionDenied int + Failed int + FieldOwnershipConflicts int + ImmutableFields int + NamespaceMissing int + Passed int + Skipped int + Total int type ServerPlanOptions + DefaultNamespace string v1.0.6 May 6, 2026 Changes in this version + const PhaseDiff + const PhaseInstall + const PhasePostHooks + const PhaseRender + const PhaseUpgrade + const PhaseWait + func DescribeDeployAction(desc ActionDescriptor) string + func DetectServerSideReplaceKeys(ctx context.Context, client *kube.Client, proposedManifest string, ...) (map[string]bool, error) + func DigestNormalizedManifest(manifest string) (digest string, hasHooks bool, err error) + func FetchLatestReleaseManifest(actionCfg *action.Configuration, releaseName string) (string, string) + func FormatDigestMismatch(want, got string) string + func FormatDriftReport(report DriftReport, maxItems int, maxDiffLines int) string + func IsSuccessfulStatus(status string) bool + func ReleaseHistoryBreadcrumbs(actionCfg *action.Configuration, releaseName string, limit int) ([]HistoryBreadcrumb, *HistoryBreadcrumb, error) + func RunDriftCheck(ctx context.Context, actionCfg *action.Configuration, ...) error + type ActionDescriptor struct + Chart string + Destroy bool + Diff bool + DryRun bool + Namespace string + Release string + Version string + type Blocker struct + Kind string + Message string + Name string + Namespace string + Reason string + Severity BlockerSeverity + Status string + func TopBlockers(rows []ResourceStatus, limit int) []Blocker + type BlockerSeverity string + const BlockerFail + const BlockerWarn + type CaptureFileHash struct + Error string + Path string + SHA256 string + Size int64 + func HashFiles(paths []string) []CaptureFileHash + type DiffPayload struct + HasDiff bool + Text string + type DriftItem struct + Diff string + Kind string + Name string + Namespace string + Reason string + type DriftLiveGetter func(ctx context.Context, target resourceTarget) (*unstructured.Unstructured, error) + func DriftLiveGetterFromKube(client *kube.Client) DriftLiveGetter + type DriftOptions struct + IgnoreMissing bool + MaxConcurrency int + PerObjectTimeout time.Duration + RequireHelmOwnership bool + type DriftReport struct + Items []DriftItem + func CheckReleaseDrift(ctx context.Context, releaseName string, manifest string, get DriftLiveGetter) (DriftReport, error) + func CheckReleaseDriftWithOptions(ctx context.Context, releaseName string, manifest string, get DriftLiveGetter, ...) (DriftReport, error) + func (r DriftReport) Empty() bool + type HealthSnapshot struct + Failed int + LastUpdated string + Pending int + Progressing int + Ready int + Total int + type HistoryBreadcrumb struct + AppVersion string + Chart string + DeployedAt string + Description string + Revision int + Status string + Version string + func BreadcrumbFromRelease(rel *release.Release) (HistoryBreadcrumb, bool) + func CloneBreadcrumbPointer(crumb *HistoryBreadcrumb) *HistoryBreadcrumb + func CloneBreadcrumbs(history []HistoryBreadcrumb) []HistoryBreadcrumb + func PrependBreadcrumb(history []HistoryBreadcrumb, crumb HistoryBreadcrumb, limit int) []HistoryBreadcrumb + type InstallOptions struct + Atomic bool + Chart string + CreateNamespace bool + Diff bool + DryRun bool + Namespace string + ProgressObservers []ProgressObserver + ReleaseName string + Secrets *SecretOptions + SetFileValues []string + SetStringValues []string + SetValues []string + Timeout time.Duration + UpgradeOnly bool + ValuesFiles []string + Version string + Wait bool + type InstallResult struct + ManifestDiff string + PlanSummarizeError string + PlanSummary *PlanSummary + Release *release.Release + func GeneratePlanPreview(ctx context.Context, actionCfg *action.Configuration, ...) (*InstallResult, error) + func InstallOrUpgrade(ctx context.Context, actionCfg *action.Configuration, ...) (*InstallResult, error) + type LogPayload struct + Container string + Level string + Message string + Namespace string + Pod string + Source string + type ManifestTarget struct + Group string + Kind string + Labels map[string]string + Name string + Namespace string + Version string + func ManifestTargets(manifest string) []ManifestTarget + type PhasePayload struct + CompletedAt string + Message string + Name string + StartedAt string + State string + Status string + type PlanAction string + const PlanAdd + const PlanDestroy + const PlanReplace + const PlanUpdate + type PlanChange struct + Action PlanAction + Group string + Hook string + IsHook bool + Kind string + Name string + Namespace string + Version string + func ListManifestResources(manifest string) ([]PlanChange, error) + func ListManifestResourcesWithHelmKube(client *kube.Client, manifest string) ([]PlanChange, error) + type PlanHooksSummary struct + Add int + Change int + Changes []PlanChange + Destroy int + Replace int + type PlanSummary struct + Add int + Change int + Changes []PlanChange + Destroy int + Hooks PlanHooksSummary + Replace int + func SummarizeManifestPlan(previousManifest, proposedManifest string) (*PlanSummary, error) + func SummarizeManifestPlanWithHelmKube(client *kube.Client, previousManifest, proposedManifest string) (*PlanSummary, error) + type ProgressObserver interface + EmitEvent func(level, message string) + PhaseCompleted func(name, status, message string) + PhaseStarted func(name string) + SetDiff func(diff string) + type ResourceStatus struct + Action string + Kind string + Message string + Name string + Namespace string + Reason string + Status string + type ResourceTracker struct + func NewResourceTracker(client *kube.Client, namespace, release, manifest string, ...) *ResourceTracker + func (t *ResourceTracker) Run(ctx context.Context) + func (t *ResourceTracker) Snapshot(ctx context.Context) []ResourceStatus + func (t *ResourceTracker) WithInterval(interval time.Duration) *ResourceTracker + type SecretOptions struct + AuditSink func(secretstore.AuditReport) + Resolver *secretstore.Resolver + Validate bool + type SecretRef struct + Masked bool + Path string + Provider string + Reference string + type ServerPlanOptions struct + FieldManager string + Force bool + type StatusUpdateFunc func([]ResourceStatus) + type StreamBroadcaster struct + func NewStreamBroadcaster(release, namespace, chart string) *StreamBroadcaster + func (b *StreamBroadcaster) AddObserver(obs StreamObserver) + func (b *StreamBroadcaster) EmitEvent(level, message string) + func (b *StreamBroadcaster) EmitSummary(summary SummaryPayload) + func (b *StreamBroadcaster) HasObservers() bool + func (b *StreamBroadcaster) ObserveLog(record tailer.LogRecord) + func (b *StreamBroadcaster) PhaseCompleted(name, status, message string) + func (b *StreamBroadcaster) PhaseStarted(name string) + func (b *StreamBroadcaster) SetDiff(diff string) + func (b *StreamBroadcaster) UpdateResources(rows []ResourceStatus) + func (b *StreamBroadcaster) WantsResourceSnapshots() bool + type StreamEvent struct + Diff *DiffPayload + Health *HealthSnapshot + Kind StreamEventKind + Log *LogPayload + Phase *PhasePayload + Resources []ResourceStatus + Summary *SummaryPayload + Timestamp string + type StreamEventKind string + const StreamEventDiff + const StreamEventHealth + const StreamEventLog + const StreamEventPhase + const StreamEventResources + const StreamEventSummary + type StreamObserver interface + HandleDeployEvent func(StreamEvent) + type SummaryPayload struct + Action string + Chart string + Duration string + Error string + History []HistoryBreadcrumb + LastSuccessful *HistoryBreadcrumb + Namespace string + Notes string + PhaseDurations map[string]string + Release string + Secrets []SecretRef + Status string + Version string + type TemplateOptions struct + Chart string + IncludeCRDs bool + Namespace string + ReleaseName string + RepoURL string + Secrets *SecretOptions + SetFileValues []string + SetStringValues []string + SetValues []string + UseCluster bool + ValuesFiles []string + Version string + type TemplateResult struct + ChartVersion string + Manifest string + Notes string + Templates map[string]string + func RenderTemplate(ctx context.Context, actionCfg *action.Configuration, ...) (*TemplateResult, error)