Documentation
¶
Overview ¶
Package helm holds tool-layer CompositeError parsers for helm jobs. They register at errparse.LayerTool so a provider-specific cause (e.g. an AWS IAM denial parsed at LayerProvider) still wins, but any recognised helm failure yields a clean, structured error instead of falling through to the raw generic dump.
The runner drives helm through the Go SDK (helm.sh/helm/v4 pkg/action), not the CLI, so the familiar "INSTALLATION FAILED"/"UPGRADE FAILED" phase prefixes never appear — those are added only by helm's cmd layer. What is reliably present is the runner's own wrapper around the SDK error ("unable to upgrade helm release: <sdk error>", "unable to execute with dry-run: <sdk error>"). The parser leads the headline at the SDK error by stripping that wrapper, and falls back to a set of verified helm v4 SDK cause strings when the wrapper is absent from the captured output.
Index ¶
Constants ¶
const HelmErrorType compositeerrors.Type = "helm.error"
HelmErrorType is the discriminator for a helm failure that no provider-layer parser recognised.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type HelmError ¶
type HelmError struct {
// Summary is the helm failure cause, with the runner's wrapper prefix
// removed so it leads with the SDK error rather than the nesting.
Summary string `json:"summary"`
// Output is the cleaned, possibly-truncated diagnostic output.
Output string `json:"output,omitempty"`
}
HelmError is the tool-layer payload: the helm failure summary (the SDK error with the runner's wrapper stripped) plus the cleaned output for context.
func (*HelmError) Sections ¶
func (e *HelmError) Sections() []compositeerrors.Section
func (*HelmError) Severity ¶
func (e *HelmError) Severity() compositeerrors.Severity
func (*HelmError) Type ¶
func (e *HelmError) Type() compositeerrors.Type