Documentation
¶
Overview ¶
Package helm provides helpers for interacting with Helm in KSail.
Index ¶
- Constants
- type ChartSpec
- type Client
- func (c *Client) AddRepository(ctx context.Context, entry *RepositoryEntry) error
- func (c *Client) InstallChart(ctx context.Context, spec *ChartSpec) (*ReleaseInfo, error)
- func (c *Client) InstallOrUpgradeChart(ctx context.Context, spec *ChartSpec) (*ReleaseInfo, error)
- func (c *Client) UninstallRelease(ctx context.Context, releaseName, namespace string) error
- type Interface
- type ReleaseInfo
- type RepositoryEntry
Constants ¶
const ( // DefaultTimeout defines the fallback Helm chart installation timeout. DefaultTimeout = 5 * time.Minute )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ChartSpec ¶ added in v1.12.3
type ChartSpec struct {
ReleaseName string
ChartName string
Namespace string
Version string
CreateNamespace bool
Atomic bool
Wait bool
WaitForJobs bool
Timeout time.Duration
Silent bool
UpgradeCRDs bool
ValuesYaml string
ValueFiles []string
SetValues map[string]string
SetFileVals map[string]string
SetJSONVals map[string]string
RepoURL string
Username string
Password string
CertFile string
KeyFile string
CaFile string
InsecureSkipTLSverify bool
}
ChartSpec mirrors the mittwald chart specification while keeping KSail specific convenience fields.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client represents the default helm implementation used by KSail.
func NewClientWithDebug ¶ added in v1.12.3
func NewClientWithDebug( kubeConfig, kubeContext string, debugFunc func(string, ...interface{}), ) (*Client, error)
NewClientWithDebug creates a Helm client with a custom debug logger.
func (*Client) AddRepository ¶ added in v1.12.3
func (c *Client) AddRepository(ctx context.Context, entry *RepositoryEntry) error
AddRepository registers a Helm repository for the current client instance.
func (*Client) InstallChart ¶ added in v1.12.3
InstallChart installs a Helm chart using the provided specification.
func (*Client) InstallOrUpgradeChart ¶ added in v1.12.3
InstallOrUpgradeChart upgrades a Helm chart when present and installs it otherwise.
type Interface ¶ added in v1.12.3
type Interface interface {
InstallChart(ctx context.Context, spec *ChartSpec) (*ReleaseInfo, error)
InstallOrUpgradeChart(ctx context.Context, spec *ChartSpec) (*ReleaseInfo, error)
UninstallRelease(ctx context.Context, releaseName, namespace string) error
AddRepository(ctx context.Context, entry *RepositoryEntry) error
}
Interface defines the subset of Helm functionality required by KSail.
type ReleaseInfo ¶ added in v1.12.3
type ReleaseInfo struct {
Name string
Namespace string
Revision int
Status string
Chart string
AppVersion string
Updated time.Time
Notes string
}
ReleaseInfo captures metadata about a Helm release after an operation.
type RepositoryEntry ¶ added in v1.12.3
type RepositoryEntry struct {
Name string
URL string
Username string
Password string
CertFile string
KeyFile string
CaFile string
InsecureSkipTLSverify bool
PlainHTTP bool
}
RepositoryEntry describes a Helm repository that should be added locally before performing chart operations.