Documentation ¶
Overview ¶
Package helm provides common functionalities for testing helm charts, such as calling out to the helm client.
Index ¶
- func AddRepo(t testing.TestingT, options *Options, repoName string, repoURL string)
- func AddRepoE(t testing.TestingT, options *Options, repoName string, repoURL string) error
- func Delete(t testing.TestingT, options *Options, releaseName string, purge bool)
- func DeleteE(t testing.TestingT, options *Options, releaseName string, purge bool) error
- func Install(t testing.TestingT, options *Options, chart string, releaseName string)
- func InstallE(t testing.TestingT, options *Options, chart string, releaseName string) error
- func RemoveRepo(t testing.TestingT, options *Options, repoName string)
- func RemoveRepoE(t testing.TestingT, options *Options, repoName string) error
- func RenderTemplate(t testing.TestingT, options *Options, chartDir string, releaseName string, ...) string
- func RenderTemplateE(t testing.TestingT, options *Options, chartDir string, releaseName string, ...) (string, error)
- func Rollback(t testing.TestingT, options *Options, releaseName string, revision string)
- func RollbackE(t testing.TestingT, options *Options, releaseName string, revision string) error
- func RunHelmCommandAndGetOutputE(t testing.TestingT, options *Options, cmd string, additionalArgs ...string) (string, error)
- func RunHelmCommandAndGetStdOutE(t testing.TestingT, options *Options, cmd string, additionalArgs ...string) (string, error)
- func UnmarshalK8SYaml(t testing.TestingT, yamlData string, destinationObj interface{})
- func UnmarshalK8SYamlE(t testing.TestingT, yamlData string, destinationObj interface{}) error
- func Upgrade(t testing.TestingT, options *Options, chart string, releaseName string)
- func UpgradeE(t testing.TestingT, options *Options, chart string, releaseName string) error
- type ChartNotFoundError
- type Options
- type SetFileNotFoundError
- type TemplateFileNotFoundError
- type ValuesFileNotFoundError
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AddRepo ¶
AddRepo will setup the provided helm repository to the local helm client configuration. This will fail the test if there is an error.
func AddRepoE ¶
AddRepoE will setup the provided helm repository to the local helm client configuration.
func Delete ¶
Delete will delete the provided release from Tiller. If you set purge to true, Tiller will delete the release object as well so that the release name can be reused. This will fail the test if there is an error.
func DeleteE ¶
DeleteE will delete the provided release from Tiller. If you set purge to true, Tiller will delete the release object as well so that the release name can be reused.
func Install ¶
Install will install the selected helm chart with the provided options under the given release name. This will fail the test if there is an error.
func InstallE ¶
InstallE will install the selected helm chart with the provided options under the given release name.
func RemoveRepo ¶
RemoveRepo will remove the provided helm repository from the local helm client configuration. This will fail the test if there is an error.
func RemoveRepoE ¶
RemoveRepoE will remove the provided helm repository from the local helm client configuration.
func RenderTemplate ¶
func RenderTemplate(t testing.TestingT, options *Options, chartDir string, releaseName string, templateFiles []string, extraHelmArgs ...string) string
RenderTemplate runs `helm template` to render the template given the provided options and returns stdout/stderr from the template command. If you pass in templateFiles, this will only render those templates. This function will fail the test if there is an error rendering the template.
func RenderTemplateE ¶
func RenderTemplateE(t testing.TestingT, options *Options, chartDir string, releaseName string, templateFiles []string, extraHelmArgs ...string) (string, error)
RenderTemplateE runs `helm template` to render the template given the provided options and returns stdout/stderr from the template command. If you pass in templateFiles, this will only render those templates.
func Rollback ¶
Rollback will downgrade the release to the specified version. This will fail the test if there is an error.
func RunHelmCommandAndGetOutputE ¶
func RunHelmCommandAndGetOutputE(t testing.TestingT, options *Options, cmd string, additionalArgs ...string) (string, error)
RunHelmCommandAndGetOutputE runs helm with the given arguments and options and returns combined, interleaved stdout/stderr.
func RunHelmCommandAndGetStdOutE ¶
func RunHelmCommandAndGetStdOutE(t testing.TestingT, options *Options, cmd string, additionalArgs ...string) (string, error)
RunHelmCommandAndGetStdOutE runs helm with the given arguments and options and returns stdout.
func UnmarshalK8SYaml ¶
UnmarshalK8SYaml is the same as UnmarshalK8SYamlE, but will fail the test if there is an error.
func UnmarshalK8SYamlE ¶
UnmarshalK8SYamlE can be used to take template outputs and unmarshal them into the corresponding client-go struct. For example, suppose you render the template into a Deployment object. You can unmarshal the yaml as follows:
var deployment appsv1.Deployment UnmarshalK8SYamlE(t, renderedOutput, &deployment)
At the end of this, the deployment variable will be populated.
Types ¶
type ChartNotFoundError ¶
type ChartNotFoundError struct {
Path string
}
ChartNotFoundError is returned when a provided chart dir is not found
func (ChartNotFoundError) Error ¶
func (err ChartNotFoundError) Error() string
type Options ¶
type Options struct { ValuesFiles []string // List of values files to render. SetValues map[string]string // Values that should be set via the command line. SetStrValues map[string]string // Values that should be set via the command line explicitly as `string` types. SetFiles map[string]string // Values that should be set from a file. These should be file paths. Use to avoid logging secrets. KubectlOptions *k8s.KubectlOptions // KubectlOptions to control how to authenticate to kubernetes cluster. `nil` => use defaults. HomePath string // The path to the helm home to use when calling out to helm. Empty string means use default ($HOME/.helm). EnvVars map[string]string // Environment variables to set when running helm Version string // Version of chart Logger *logger.Logger // Set a non-default logger that should be used. See the logger package for more info. Use logger.Discard to not print the output while executing the command. ExtraArgs map[string][]string // Extra arguments to pass to the helm install/upgrade/rollback/delete and helm repo add commands. The key signals the command (e.g., install) while the values are the extra arguments to pass through. }
type SetFileNotFoundError ¶
type SetFileNotFoundError struct {
Path string
}
SetFileNotFoundError is returned when a provided set file input is not found on the host path.
func (SetFileNotFoundError) Error ¶
func (err SetFileNotFoundError) Error() string
type TemplateFileNotFoundError ¶
TemplateFileNotFoundError is returned when a provided template file input is not found in the chart
func (TemplateFileNotFoundError) Error ¶
func (err TemplateFileNotFoundError) Error() string
type ValuesFileNotFoundError ¶
type ValuesFileNotFoundError struct {
Path string
}
ValuesFileNotFoundError is returned when a provided values file input is not found on the host path.
func (ValuesFileNotFoundError) Error ¶
func (err ValuesFileNotFoundError) Error() string