Documentation
¶
Index ¶
- Variables
- func ProhibitDst(values []ValuesReference) error
- type Chart
- type Config
- type Configs
- type DependencyType
- type DependsOnReference
- type PendingStrategy
- type ValuesReference
- func (v *ValuesReference) Download() error
- func (v ValuesReference) JSONSchema() *jsonschema.Schema
- func (v ValuesReference) MarshalYAML() (any, error)
- func (v *ValuesReference) SetUniq(dir string, name uniqname.UniqName) *ValuesReference
- func (v *ValuesReference) SetViaRelease(rel Config, dir, templater string) error
- func (v *ValuesReference) UnmarshalYAML(node *yaml.Node) error
Constants ¶
This section is empty.
Variables ¶
var ( // 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") )
var ErrMissingDependency = errors.New("dependency is missing")
ErrMissingDependency is returned when values can't be used and are skipped.
var ErrPendingRelease = errors.New("release is in pending status")
ErrPendingRelease is an error for fail strategy that release is in pending status.
var ErrSkipValues = errors.New("values have been skipped")
ErrSkipValues is returned when values can't be used and are skipped.
Functions ¶
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 `` //nolint:lll
/* 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"` //nolint:lll
CertFile string `yaml:"cert_file" json:"cert_file" jsonschema:"description=Identify HTTPS client using this SSL certificate file"` //nolint:lll
KeyFile string `yaml:"key_file" json:"key_file" jsonschema:"description=Identify HTTPS client using this SSL key file"` //nolint:lll
Keyring string `yaml:"keyring" json:"keyring" jsonschema:"description=Location of public keys used for verification"` //nolint:lll
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 `` //nolint:lll
/* 132-byte string literal not displayed */
Verify bool `yaml:"verify" json:"verify" jsonschema:"description=Verify the provenance of the chart before using it"` //nolint:lll
PassCredentialsAll bool `yaml:"pass_credentials" json:"pass_credentials" jsonschema:"description=Pass credentials to all domains"` //nolint:lll
}
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.
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(string, string) error
Uninstall(context.Context) (*release.UninstallReleaseResponse, error)
Get() (*release.Release, error)
List() (*release.Release, error)
Rollback(int) error
Status() (*release.Release, error)
Name() string
Namespace() string
Chart() *Chart
SetChartName(string)
DependsOn() []*DependsOnReference
Tags() []string
Repo() string
Values() []ValuesReference
HelmWait() bool
KubeContext() string
Cfg() *action.Configuration
HooksDisabled() bool
OfflineKubeVersion() *chartutil.KubeVersion
}
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) JSONSchema ¶ added in v0.23.0
func (Configs) JSONSchema() *jsonschema.Schema
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 `yaml:"name" json:"name" jsonschema:"description=Uniqname (or just name if in same namespace) of dependency release"` //nolint:lll
Tag string `` //nolint:lll
/* 134-byte string literal not displayed */
Optional bool `` //nolint:lll
/* 127-byte string literal not displayed */
}
DependsOnReference is used to store release dependencies.
nolintlint:lll
func (*DependsOnReference) Type ¶ added in v0.24.0
func (d *DependsOnReference) Type() DependencyType
func (*DependsOnReference) Uniq ¶ added in v0.24.0
func (d *DependsOnReference) Uniq() uniqname.UniqName
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 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" `
DelimiterLeft string `` //nolint:lll
/* 127-byte string literal not displayed */
DelimiterRight string `` //nolint:lll
/* 129-byte string literal not displayed */
Strict bool `yaml:"strict" json:"strict" jsonschema:"description=Whether to fail if values is not found,default=false"` //nolint:lll
Render bool `yaml:"render" json:"render" jsonschema:"description=Whether to use templater to render values,default=true"` //nolint:lll
}
ValuesReference is used to match source values file path and temporary.
func (*ValuesReference) Download ¶ added in v0.11.0
func (v *ValuesReference) Download() 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(rel Config, dir, templater string) error
SetViaRelease downloads and templates values file. Returns ErrSkipValues 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.