Documentation ¶
Overview ¶
Package release provides interfaces and default implementations for a Helm release manager, which is used by the Helm controller and reconciler to manage Helm releases in a cluster based on watched custom resources.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrUpgradeFailed = errors.New("upgrade failed; rollback required")
Functions ¶
This section is empty.
Types ¶
type InstallOption ¶
type Manager ¶
type Manager interface { ReleaseName() string IsInstalled() bool IsUpgradeRequired() bool Sync() error InstallRelease(...InstallOption) (*rpb.Release, error) UpgradeRelease(...UpgradeOption) (*rpb.Release, *rpb.Release, error) RollBack(...RollBackOption) error ReconcileRelease(context.Context) (*rpb.Release, error) UninstallRelease(...UninstallOption) (*rpb.Release, error) CleanupRelease(string) (bool, error) }
Manager manages a Helm release. It can install, upgrade, reconcile, and uninstall a release.
type ManagerFactory ¶
type ManagerFactory interface {
NewManager(r *unstructured.Unstructured, overrideValues map[string]string, dryRunOption string) (Manager, error)
}
ManagerFactory creates Managers that are specific to custom resources. It is used by the HelmOperatorReconciler during resource reconciliation, and it improves decoupling between reconciliation logic and the Helm backend components used to manage releases.
func NewManagerFactory ¶
func NewManagerFactory(mgr crmanager.Manager, acg client.ActionConfigGetter, chartDir string) ManagerFactory
NewManagerFactory returns a new Helm manager factory capable of installing and uninstalling releases.
type RollBackOption ¶ added in v1.32.0
func ForceRollback ¶ added in v1.32.0
func ForceRollback(force bool) RollBackOption
type UninstallOption ¶
type UpgradeOption ¶
func ForceUpgrade ¶
func ForceUpgrade(force bool) UpgradeOption