helm

package
v1.6.20 Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2022 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Overview

nolint

nolint

nolint

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Namespace

func Namespace() string

Namespace returns the Helm namespace

func SetContext

func SetContext(ctx *Context) error

SetContext sets the Helm context

Types

type Context

type Context struct {
	// WorkDir is the Helm working directory
	WorkDir string

	// Values is a mapping of release values
	Values map[string][]string

	// ValueFiles is a mapping of release value files
	ValueFiles map[string][]string
}

Context is a Helm context

func (*Context) Release

func (c *Context) Release(name string) *ReleaseContext

Release returns the context for the given release

type HelmChart

type HelmChart struct {
	HelmReleaseClient
	// contains filtered or unexported fields
}

HelmChart is a Helm chart

func Chart

func Chart(name string, repository ...string) *HelmChart

Chart returns a Helm chart

func Charts

func Charts() []*HelmChart

Charts returns a list of Helm charts

func (*HelmChart) Name

func (c *HelmChart) Name() string

Name returns the chart name

func (*HelmChart) Release

func (c *HelmChart) Release(name string) *HelmRelease

Release returns the release with the given name

func (*HelmChart) Releases

func (c *HelmChart) Releases() []*HelmRelease

Releases returns a list of releases of the chart

func (*HelmChart) Repository

func (c *HelmChart) Repository() string

Repository returns the chart's repository URL

type HelmChartClient

type HelmChartClient interface {
	// Charts returns a list of charts in the namespace
	Charts() []*HelmChart

	// HelmChart gets a chart in the namespace
	Chart(name string, repository ...string) *HelmChart
}

HelmChartClient is a Helm chart client

type HelmClient

type HelmClient interface {
	HelmChartClient
	HelmReleaseClient

	// Namespace returns the client for the given namespace
	Namespace(namespace string) HelmClient
}

HelmClient is a Helm client

func Client

func Client() HelmClient

Client returns the Helm client

type HelmRelease

type HelmRelease struct {
	// contains filtered or unexported fields
}

HelmRelease is a Helm chart release

func Release

func Release(name string) *HelmRelease

Release returns a Helm chart release

func Releases

func Releases() []*HelmRelease

Releases returns a list of Helm chart releases

func (*HelmRelease) Get

func (r *HelmRelease) Get(path string) interface{}

Get gets a value

func (*HelmRelease) GetResources

func (r *HelmRelease) GetResources() (helm.ResourceList, error)

GetResources returns a list of chart resources

func (*HelmRelease) Install

func (r *HelmRelease) Install(wait bool) error

Install installs the Helm chart

func (*HelmRelease) Name

func (r *HelmRelease) Name() string

Name returns the release name

func (*HelmRelease) Namespace

func (r *HelmRelease) Namespace() string

Namespace returns the release namespace

func (*HelmRelease) Set

func (r *HelmRelease) Set(path string, value interface{}) *HelmRelease

Set sets a value

func (*HelmRelease) SetPassword

func (r *HelmRelease) SetPassword(password string) *HelmRelease

SetPassword sets the authentication password

func (*HelmRelease) SetSkipCRDs

func (r *HelmRelease) SetSkipCRDs(skipCRDs bool) *HelmRelease

SetSkipCRDs sets whether to skip CRDs

func (*HelmRelease) SetUsername

func (r *HelmRelease) SetUsername(userName string) *HelmRelease

SetUsername sets the authentication user name

func (*HelmRelease) SkipCRDs

func (r *HelmRelease) SkipCRDs() bool

SkipCRDs returns whether CRDs are skipped in the release

func (*HelmRelease) Timeout

func (r *HelmRelease) Timeout() time.Duration

Timeout returns the maximum time to allow for an install operation to complete

func (*HelmRelease) Uninstall

func (r *HelmRelease) Uninstall() error

Uninstall uninstalls the Helm chart

func (*HelmRelease) Values

func (r *HelmRelease) Values() map[string]interface{}

Values is the release's values

func (*HelmRelease) WithTimeout

func (r *HelmRelease) WithTimeout(timeout time.Duration) *HelmRelease

WithTimeout specifies the maximum time to allow for an install operation to complete

type HelmReleaseClient

type HelmReleaseClient interface {
	// Releases returns a list of releases in the namespace
	Releases() []*HelmRelease

	// Release gets a chart release in the namespace
	Release(name string) *HelmRelease
}

HelmReleaseClient is a Helm release client

type ReleaseContext

type ReleaseContext struct {
	// ValueFiles is the release value files
	ValueFiles []string

	// Values is the release values
	Values []string
}

ReleaseContext is a Helm release context

Jump to

Keyboard shortcuts

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