helm

package
v0.7.1-rc.3 Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2022 License: MPL-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultBufferSize = 2048
View Source
const LayerAnnotation = "weave.works/layer"

LayerAnnotation specifies profile application order. Profiles are sorted by layer and those at a higher "layer" are only installed after lower layers have successfully installed and started.

View Source
const ProfileAnnotation = "weave.works/profile"

ProfileAnnotation is the annotation that Helm charts must have to indicate that they provide a Profile.

Variables

View Source
var Profiles = func(v *repo.ChartVersion) bool {
	return hasAnnotation(v.Metadata, ProfileAnnotation)
}

Profiles is a predicate for scanning charts with the ProfileAnnotation.

Functions

func AppendHelmReleaseToString added in v0.7.0

func AppendHelmReleaseToString(content string, newRelease *helmv2beta1.HelmRelease) (string, error)

AppendHelmReleaseToString appends "---" and a HelmRelease to string that may or may not be empty. This creates the content of a manifest that contains HelmReleases separated by "---".

func MakeHelmRelease added in v0.7.0

func MakeHelmRelease(name, version, cluster, namespace string, helmRepository types.NamespacedName) *helmv2beta1.HelmRelease

MakeHelmRelease returns a HelmRelease object given a name, version, cluster, namespace, and HelmRepository's name and namespace.

func MarshalHelmReleases added in v0.7.0

func MarshalHelmReleases(existingReleases []*helmv2beta1.HelmRelease) (string, error)

MarshalHelmReleases marshals a list of HelmReleases.

func SplitHelmReleaseYAML added in v0.7.0

func SplitHelmReleaseYAML(resources []byte) ([]*helmv2beta1.HelmRelease, error)

SplitHelmReleaseYAML splits a manifest file that contains one or more Helm Releases that may be separated by '---'.

Types

type ChartPredicate

type ChartPredicate func(*repo.ChartVersion) bool

type ChartReference

type ChartReference struct {
	Chart   string
	Version string
}

ChartReference is a Helm chart reference

type HelmRepoManager added in v0.6.1

type HelmRepoManager interface {
	ListCharts(ctx context.Context, hr *sourcev1beta1.HelmRepository, pred ChartPredicate) ([]*pb.Profile, error)
	GetValuesFile(ctx context.Context, helmRepo *sourcev1beta1.HelmRepository, c *ChartReference, filename string) ([]byte, error)
}

type RepoManager

type RepoManager struct {
	client.Client
	CacheDir string
	// contains filtered or unexported fields
}

RepoManager implements HelmRepoManager interface using the Helm library packages.

func NewRepoManager

func NewRepoManager(kc client.Client, cacheDir string) *RepoManager

NewRepoManager creates and returns a new RepoManager.

func (*RepoManager) GetValuesFile

func (h *RepoManager) GetValuesFile(ctx context.Context, helmRepo *sourcev1beta1.HelmRepository, c *ChartReference, filename string) ([]byte, error)

GetValuesFile fetches the value file from a chart.

func (*RepoManager) ListCharts added in v0.6.1

ListCharts filters charts using the provided predicate.

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.
cache/cachefakes
Code generated by counterfeiter.
Code generated by counterfeiter.
controller/controllerfakes
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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