release

package
v1.0.0-alpha.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2020 License: Apache-2.0 Imports: 28 Imported by: 0

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

This section is empty.

Functions

This section is empty.

Types

type InstallOption

type InstallOption func(*action.Install) error

type Manager

type Manager interface {
	ReleaseName() string
	IsInstalled() bool
	IsUpgradeRequired() bool
	Sync(context.Context) error
	InstallRelease(context.Context, ...InstallOption) (*rpb.Release, error)
	UpgradeRelease(context.Context, ...UpgradeOption) (*rpb.Release, *rpb.Release, error)
	ReconcileRelease(context.Context) (*rpb.Release, error)
	UninstallRelease(context.Context, ...UninstallOption) (*rpb.Release, 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) (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, chartDir string) ManagerFactory

NewManagerFactory returns a new Helm manager factory capable of installing and uninstalling releases.

type UninstallOption

type UninstallOption func(*action.Uninstall) error

type UpgradeOption

type UpgradeOption func(*action.Upgrade) error

func ForceUpgrade

func ForceUpgrade(force bool) UpgradeOption

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL