release

package
v0.35.2 Latest Latest
Warning

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

Go to latest
Published: Mar 9, 2024 License: MIT Imports: 41 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNameEmpty = errors.New("release name is empty")

	// ErrPendingRelease is an error for fail strategy that release is in pending status.
	ErrPendingRelease = errors.New("release is in pending status")

	// ErrValuesNotExist is returned when values can't be used and are skipped.
	ErrValuesNotExist = errors.New("values file doesn't exist")

	// ErrNotFound is an error for not found release.
	ErrNotFound = driver.ErrReleaseNotFound

	// ErrFoundMultiple is an error for multiple releases found by name.
	ErrFoundMultiple = errors.New("found multiple releases o_0")

	// ErrDepFailed is an error thrown when dependency release fails.
	ErrDepFailed = errors.New("dependency failed")

	ErrUnknownFormat = errors.New("unknown format")

	ErrDigestNotMatch = errors.New("chart digest doesn't match")
)

Functions

func NewChartCacheError added in v0.33.0

func NewChartCacheError(err error) error

func NewDuplicateError added in v0.31.0

func NewDuplicateError(uniq uniqname.UniqName) error

func NewHelmTestsError added in v0.34.0

func NewHelmTestsError(err error) error

func NewInvalidNamespaceError added in v0.31.0

func NewInvalidNamespaceError(namespace string) error

func NewYAMLDecodeDependsOnError added in v0.31.0

func NewYAMLDecodeDependsOnError(dependsOn string, err error) error

func ProhibitDst added in v0.20.2

func ProhibitDst(values []ValuesReference) error

ProhibitDst Dst now is public method. Dst needs to marshal for export. Also, dst needs to unmarshal for import from plan.

Types

type Chart added in v0.12.0

type Chart struct {
	Name                  string `` /* 142-byte string literal not displayed */
	CaFile                string `yaml:"ca_file" json:"ca_file" jsonschema:"description=Verify certificates of HTTPS-enabled servers using this CA bundle"`
	CertFile              string `yaml:"cert_file" json:"cert_file" jsonschema:"description=Identify HTTPS client using this SSL certificate file"`
	KeyFile               string `yaml:"key_file" json:"key_file" jsonschema:"description=Identify HTTPS client using this SSL key file"`
	Keyring               string `yaml:"keyring" json:"keyring" jsonschema:"description=Location of public keys used for verification"`
	RepoURL               string `yaml:"repo_url" json:"repo_url" jsonschema:"description=Chart repository url"`
	Username              string `yaml:"username" json:"username" jsonschema:"description=Chart repository username"`
	Password              string `yaml:"password" json:"password" jsonschema:"description=Chart repository password"`
	Version               string `yaml:"version" json:"version" jsonschema:"description=Chart version"`
	InsecureSkipTLSverify bool   `` /* 132-byte string literal not displayed */
	Verify                bool   `yaml:"verify" json:"verify" jsonschema:"description=Verify the provenance of the chart before using it"`
	PassCredentialsAll    bool   `yaml:"pass_credentials" json:"pass_credentials" jsonschema:"description=Pass credentials to all domains"`
	PlainHTTP             bool   `yaml:"plain_http" json:"plain_http" jsonschema:"description=Connect to server with plain http and not https,default=false"`
	SkipDependencyUpdate  bool   `` /* 141-byte string literal not displayed */
	SkipRefresh           bool   `` /* 127-byte string literal not displayed */
}

Chart is a structure for chart download options.

func (*Chart) CopyOptions added in v0.28.1

func (c *Chart) CopyOptions(cpo *action.ChartPathOptions)

CopyOptions is a helper for copy options from Chart to ChartPathOptions.

func (*Chart) IsRemote added in v0.24.0

func (c *Chart) IsRemote() bool

func (*Chart) UnmarshalYAML added in v0.20.0

func (c *Chart) UnmarshalYAML(node *yaml.Node) error

UnmarshalYAML flexible config.

type ChartCacheError added in v0.33.0

type ChartCacheError struct {
	Err error
}

func (ChartCacheError) Error added in v0.33.0

func (err ChartCacheError) Error() string

func (ChartCacheError) Unwrap added in v0.33.0

func (err ChartCacheError) Unwrap() error

type Config

type Config interface {
	helper.EqualChecker[Config]
	log.LoggerGetter
	Uniq() uniqname.UniqName
	Sync(context.Context) (*release.Release, error)
	SyncDryRun(context.Context) (*release.Release, error)
	AllowFailure() bool
	DryRun(bool)
	ChartDepsUpd() error
	DownloadChart(string) error
	BuildValues(context.Context, string, string) error
	Uninstall(context.Context) (*release.UninstallReleaseResponse, error)
	Get(int) (*release.Release, error)
	List() (*release.Release, error)
	Rollback(context.Context, int) error
	Status() (*release.Release, error)
	Name() string
	Namespace() string
	Chart() *Chart
	SetChartName(string)
	DependsOn() []*DependsOnReference
	SetDependsOn([]*DependsOnReference)
	Tags() []string
	Repo() string
	Values() []ValuesReference
	HelmWait() bool
	KubeContext() string
	Cfg() *action.Configuration
	HooksDisabled() bool
	OfflineKubeVersion() *chartutil.KubeVersion
	Validate() error
	Monitors() []MonitorReference
	NotifyMonitorsFailed(context.Context, ...monitor.Config)
}

Config is an interface to manage particular helm release.

type Configs added in v0.19.1

type Configs []Config

Configs type of array Config.

func (Configs) Contains added in v0.30.2

func (r Configs) Contains(rel Config) (Config, bool)

func (Configs) ContainsUniq added in v0.30.2

func (r Configs) ContainsUniq(uniq uniqname.UniqName) (Config, bool)

func (Configs) JSONSchema added in v0.23.0

func (Configs) JSONSchema() *jsonschema.Schema

func (*Configs) UnmarshalYAML added in v0.19.1

func (r *Configs) UnmarshalYAML(node *yaml.Node) error

UnmarshalYAML is an unmarshaller for gopkg.in/yaml.v3 to parse YAML into `Config` interface.

type DependencyType added in v0.24.0

type DependencyType int
const (
	DependencyRelease DependencyType = iota
	DependencyTag
	DependencyInvalid
)

type DependsOnReference added in v0.24.0

type DependsOnReference struct {
	Name     string `` /* 135-byte string literal not displayed */
	Tag      string `` /* 153-byte string literal not displayed */
	Optional bool   `` /* 127-byte string literal not displayed */
}

DependsOnReference is used to store release dependencies.

func (*DependsOnReference) Type added in v0.24.0

func (*DependsOnReference) Uniq added in v0.24.0

func (*DependsOnReference) UnmarshalYAML added in v0.24.0

func (d *DependsOnReference) UnmarshalYAML(node *yaml.Node) error

UnmarshalYAML is used to implement InterfaceUnmarshaler interface of gopkg.in/yaml.v3.

type DuplicateError added in v0.30.2

type DuplicateError struct {
	Uniq uniqname.UniqName
}

func (DuplicateError) Error added in v0.30.2

func (err DuplicateError) Error() string

type HelmTestsError added in v0.34.0

type HelmTestsError struct {
	Err error
}

func (HelmTestsError) Error added in v0.34.0

func (err HelmTestsError) Error() string

func (HelmTestsError) Unwrap added in v0.34.0

func (err HelmTestsError) Unwrap() error

type InvalidNamespaceError added in v0.30.2

type InvalidNamespaceError struct {
	Namespace string
}

func (InvalidNamespaceError) Error added in v0.30.2

func (err InvalidNamespaceError) Error() string

type MonitorFailedAction added in v0.32.0

type MonitorFailedAction string

MonitorFailedAction is a type for enumerating actions for handling failed monitors.

const (
	MonitorActionNone      MonitorFailedAction = ""
	MonitorActionRollback  MonitorFailedAction = "rollback"
	MonitorActionUninstall MonitorFailedAction = "uninstall"
)

func (MonitorFailedAction) JSONSchema added in v0.32.0

func (MonitorFailedAction) JSONSchema() *jsonschema.Schema

type MonitorReference added in v0.32.0

type MonitorReference struct {
	Name   string              `yaml:"name" json:"name" jsonschema:"required"`
	Action MonitorFailedAction `yaml:"action" json:"action" jsonschema:"title=Action if monitor fails"`
}

type PendingStrategy added in v0.21.0

type PendingStrategy string

PendingStrategy is a type for enumerating strategies for handling pending releases.

const (
	// PendingStrategyRollback rolls back pending release.
	PendingStrategyRollback PendingStrategy = "rollback"
	// PendingStrategyUninstall uninstalls pending release.
	PendingStrategyUninstall PendingStrategy = "uninstall"
)

func (PendingStrategy) JSONSchema added in v0.24.0

func (PendingStrategy) JSONSchema() *jsonschema.Schema

type ValuesReference added in v0.11.0

type ValuesReference struct {
	Src            string `yaml:"src" json:"src" jsonschema:"required,description=Source of values. Can be local path or HTTP URL"`
	Dst            string `yaml:"dst" json:"dst" jsonschema:"readOnly"`
	DelimiterLeft  string `` /* 127-byte string literal not displayed */
	DelimiterRight string `` /* 129-byte string literal not displayed */
	Renderer       string `yaml:"renderer" json:"renderer" jsonschema:"description=How to render the file,enum=sprig,enum=gomplate,enum=copy,enum=sops"`
	Strict         bool   `yaml:"strict" json:"strict" jsonschema:"description=Whether to fail if values is not found,default=false"`
}

ValuesReference is used to match source values file path and temporary.

func (*ValuesReference) Download added in v0.11.0

func (v *ValuesReference) Download(ctx context.Context) error

Download downloads values by source URL and places to destination path.

func (*ValuesReference) JSONSchema added in v0.24.0

func (v *ValuesReference) JSONSchema() *jsonschema.Schema

func (*ValuesReference) MarshalYAML added in v0.12.0

func (v *ValuesReference) MarshalYAML() (any, error)

MarshalYAML is used to implement Marshaler interface of gopkg.in/yaml.v3.

func (*ValuesReference) SetUniq added in v0.12.5

func (v *ValuesReference) SetUniq(dir string, name uniqname.UniqName) *ValuesReference

SetUniq generates unique file path based on provided base directory, release uniqname and sha1 of source path.

func (*ValuesReference) SetViaRelease added in v0.12.0

func (v *ValuesReference) SetViaRelease(ctx context.Context, rel Config, dir, templater string) error

SetViaRelease downloads and templates values file. Returns ErrValuesNotExist if values can't be downloaded or doesn't exist in local FS.

func (*ValuesReference) UnmarshalYAML added in v0.11.0

func (v *ValuesReference) UnmarshalYAML(node *yaml.Node) error

UnmarshalYAML flexible config.

type YAMLDecodeDependsOnError added in v0.31.0

type YAMLDecodeDependsOnError struct {
	Err       error
	DependsOn string
}

func (YAMLDecodeDependsOnError) Error added in v0.31.0

func (err YAMLDecodeDependsOnError) Error() string

func (YAMLDecodeDependsOnError) Unwrap added in v0.31.0

func (err YAMLDecodeDependsOnError) Unwrap() error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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