feat: add an option to set a custom kustomize binary (#1012)
Signed-off-by: Alessio Dionisi <me@alessiodionisi.com>
This commit is contained in:
parent
dae5a21431
commit
ad258463b6
|
|
@ -115,6 +115,7 @@ func NewRootCmd(globalConfig *config.GlobalOptions) (*cobra.Command, error) {
|
||||||
|
|
||||||
func setGlobalOptionsForRootCmd(fs *pflag.FlagSet, globalOptions *config.GlobalOptions) {
|
func setGlobalOptionsForRootCmd(fs *pflag.FlagSet, globalOptions *config.GlobalOptions) {
|
||||||
fs.StringVarP(&globalOptions.HelmBinary, "helm-binary", "b", app.DefaultHelmBinary, "Path to the helm binary")
|
fs.StringVarP(&globalOptions.HelmBinary, "helm-binary", "b", app.DefaultHelmBinary, "Path to the helm binary")
|
||||||
|
fs.StringVarP(&globalOptions.KustomizeBinary, "kustomize-binary", "k", app.DefaultKustomizeBinary, "Path to the kustomize binary")
|
||||||
fs.StringVarP(&globalOptions.File, "file", "f", "", "load config from file or directory. defaults to \"`helmfile.yaml`\" or \"helmfile.yaml.gotmpl\" or \"helmfile.d\" (means \"helmfile.d/*.yaml\" or \"helmfile.d/*.yaml.gotmpl\") in this preference. Specify - to load the config from the standard input.")
|
fs.StringVarP(&globalOptions.File, "file", "f", "", "load config from file or directory. defaults to \"`helmfile.yaml`\" or \"helmfile.yaml.gotmpl\" or \"helmfile.d\" (means \"helmfile.d/*.yaml\" or \"helmfile.d/*.yaml.gotmpl\") in this preference. Specify - to load the config from the standard input.")
|
||||||
fs.StringVarP(&globalOptions.Environment, "environment", "e", "", `specify the environment name. Overrides "HELMFILE_ENVIRONMENT" OS environment variable when specified. defaults to "default"`)
|
fs.StringVarP(&globalOptions.Environment, "environment", "e", "", `specify the environment name. Overrides "HELMFILE_ENVIRONMENT" OS environment variable when specified. defaults to "default"`)
|
||||||
fs.StringArrayVar(&globalOptions.StateValuesSet, "state-values-set", nil, "set state values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2). Used to override .Values within the helmfile template (not values template).")
|
fs.StringArrayVar(&globalOptions.StateValuesSet, "state-values-set", nil, "set state values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2). Used to override .Values within the helmfile template (not values template).")
|
||||||
|
|
|
||||||
|
|
@ -167,6 +167,8 @@ repositories:
|
||||||
# Path to alternative helm binary (--helm-binary)
|
# Path to alternative helm binary (--helm-binary)
|
||||||
helmBinary: path/to/helm3
|
helmBinary: path/to/helm3
|
||||||
|
|
||||||
|
# Path to alternative kustomize binary (--kustomize-binary)
|
||||||
|
kustomizeBinary: path/to/kustomize
|
||||||
|
|
||||||
# Path to alternative lock file. The default is <state file name>.lock, i.e for helmfile.yaml it's helmfile.lock.
|
# Path to alternative lock file. The default is <state file name>.lock, i.e for helmfile.yaml it's helmfile.lock.
|
||||||
lockFilePath: path/to/lock.file
|
lockFilePath: path/to/lock.file
|
||||||
|
|
@ -554,6 +556,7 @@ Flags:
|
||||||
-h, --help help for helmfile
|
-h, --help help for helmfile
|
||||||
-i, --interactive Request confirmation before attempting to modify clusters
|
-i, --interactive Request confirmation before attempting to modify clusters
|
||||||
--kube-context string Set kubectl context. Uses current context by default
|
--kube-context string Set kubectl context. Uses current context by default
|
||||||
|
-k, --kustomize-binary string Path to the kustomize binary (default "kustomize")
|
||||||
--log-level string Set log level, default info (default "info")
|
--log-level string Set log level, default info (default "info")
|
||||||
-n, --namespace string Set namespace. Uses the namespace set in the context by default, and is available in templates as {{ .Namespace }}
|
-n, --namespace string Set namespace. Uses the namespace set in the context by default, and is available in templates as {{ .Namespace }}
|
||||||
--no-color Output without color
|
--no-color Output without color
|
||||||
|
|
@ -565,7 +568,7 @@ Flags:
|
||||||
--skip-deps skip running "helm repo update" and "helm dependency build"
|
--skip-deps skip running "helm repo update" and "helm dependency build"
|
||||||
--state-values-file stringArray specify state values in a YAML file. Used to override .Values within the helmfile template (not values template).
|
--state-values-file stringArray specify state values in a YAML file. Used to override .Values within the helmfile template (not values template).
|
||||||
--state-values-set stringArray set state values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2). Used to override .Values within the helmfile template (not values template).
|
--state-values-set stringArray set state values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2). Used to override .Values within the helmfile template (not values template).
|
||||||
--strip-args-values-on-exit-error On exit error, strip the values of the args
|
--strip-args-values-on-exit-error Strip the potential secret values of the helm command args contained in a helmfile error message (default true)
|
||||||
-v, --version version for helmfile
|
-v, --version version for helmfile
|
||||||
|
|
||||||
Use "helmfile [command] --help" for more information about a command.
|
Use "helmfile [command] --help" for more information about a command.
|
||||||
|
|
|
||||||
2
go.mod
2
go.mod
|
|
@ -13,7 +13,7 @@ require (
|
||||||
github.com/google/go-cmp v0.5.9
|
github.com/google/go-cmp v0.5.9
|
||||||
github.com/gosuri/uitable v0.0.4
|
github.com/gosuri/uitable v0.0.4
|
||||||
github.com/hashicorp/go-getter v1.7.2
|
github.com/hashicorp/go-getter v1.7.2
|
||||||
github.com/helmfile/chartify v0.15.0
|
github.com/helmfile/chartify v0.16.0
|
||||||
github.com/helmfile/vals v0.27.1
|
github.com/helmfile/vals v0.27.1
|
||||||
github.com/imdario/mergo v0.3.16
|
github.com/imdario/mergo v0.3.16
|
||||||
github.com/spf13/cobra v1.7.0
|
github.com/spf13/cobra v1.7.0
|
||||||
|
|
|
||||||
4
go.sum
4
go.sum
|
|
@ -687,8 +687,8 @@ github.com/hashicorp/vault/sdk v0.4.1/go.mod h1:aZ3fNuL5VNydQk8GcLJ2TV8YCRVvyaak
|
||||||
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
|
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
|
||||||
github.com/hashicorp/yamux v0.0.0-20211028200310-0bc27b27de87 h1:xixZ2bWeofWV68J+x6AzmKuVM/JWCQwkWm6GW/MUR6I=
|
github.com/hashicorp/yamux v0.0.0-20211028200310-0bc27b27de87 h1:xixZ2bWeofWV68J+x6AzmKuVM/JWCQwkWm6GW/MUR6I=
|
||||||
github.com/hashicorp/yamux v0.0.0-20211028200310-0bc27b27de87/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ=
|
github.com/hashicorp/yamux v0.0.0-20211028200310-0bc27b27de87/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ=
|
||||||
github.com/helmfile/chartify v0.15.0 h1:dxDPK1GdGhijJ7bw2hYmq9mmp3Q6jvNGDoJc1LtTybg=
|
github.com/helmfile/chartify v0.16.0 h1:dJhLUQuB5EklmfOS8zt5ljofvh0bhGUc3EsnXK7u4q0=
|
||||||
github.com/helmfile/chartify v0.15.0/go.mod h1:7pmJlGn79CDMBD1+NbDJtE3L7q0hZf5GyBCJrV78vLA=
|
github.com/helmfile/chartify v0.16.0/go.mod h1:7pmJlGn79CDMBD1+NbDJtE3L7q0hZf5GyBCJrV78vLA=
|
||||||
github.com/helmfile/vals v0.27.1 h1:j1EzMeq5lCEePqmwNYpi2w791gDscKeKF95YpB4flig=
|
github.com/helmfile/vals v0.27.1 h1:j1EzMeq5lCEePqmwNYpi2w791gDscKeKF95YpB4flig=
|
||||||
github.com/helmfile/vals v0.27.1/go.mod h1:VV8Wy8Bvm/K0hTb3f3H80P1NWollaRGRi8+nkWaS15E=
|
github.com/helmfile/vals v0.27.1/go.mod h1:VV8Wy8Bvm/K0hTb3f3H80P1NWollaRGRi8+nkWaS15E=
|
||||||
github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f h1:7LYC+Yfkj3CTRcShK0KOL/w6iTiKyqqBA9a41Wnggw8=
|
github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f h1:7LYC+Yfkj3CTRcShK0KOL/w6iTiKyqqBA9a41Wnggw8=
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ var Cancel goContext.CancelFunc
|
||||||
type App struct {
|
type App struct {
|
||||||
OverrideKubeContext string
|
OverrideKubeContext string
|
||||||
OverrideHelmBinary string
|
OverrideHelmBinary string
|
||||||
|
OverrideKustomizeBinary string
|
||||||
EnableLiveOutput bool
|
EnableLiveOutput bool
|
||||||
StripArgsValuesOnExitError bool
|
StripArgsValuesOnExitError bool
|
||||||
DisableForceUpdate bool
|
DisableForceUpdate bool
|
||||||
|
|
@ -74,6 +75,7 @@ func New(conf ConfigProvider) *App {
|
||||||
return Init(&App{
|
return Init(&App{
|
||||||
OverrideKubeContext: conf.KubeContext(),
|
OverrideKubeContext: conf.KubeContext(),
|
||||||
OverrideHelmBinary: conf.HelmBinary(),
|
OverrideHelmBinary: conf.HelmBinary(),
|
||||||
|
OverrideKustomizeBinary: conf.KustomizeBinary(),
|
||||||
EnableLiveOutput: conf.EnableLiveOutput(),
|
EnableLiveOutput: conf.EnableLiveOutput(),
|
||||||
StripArgsValuesOnExitError: conf.StripArgsValuesOnExitError(),
|
StripArgsValuesOnExitError: conf.StripArgsValuesOnExitError(),
|
||||||
DisableForceUpdate: conf.DisableForceUpdate(),
|
DisableForceUpdate: conf.DisableForceUpdate(),
|
||||||
|
|
@ -758,11 +760,12 @@ func (a *App) loadDesiredStateFromYaml(file string, opts ...LoadOpts) (*state.He
|
||||||
logger: a.Logger,
|
logger: a.Logger,
|
||||||
remote: a.remote,
|
remote: a.remote,
|
||||||
|
|
||||||
overrideKubeContext: a.OverrideKubeContext,
|
overrideKubeContext: a.OverrideKubeContext,
|
||||||
overrideHelmBinary: a.OverrideHelmBinary,
|
overrideHelmBinary: a.OverrideHelmBinary,
|
||||||
enableLiveOutput: a.EnableLiveOutput,
|
overrideKustomizeBinary: a.OverrideKustomizeBinary,
|
||||||
getHelm: a.getHelm,
|
enableLiveOutput: a.EnableLiveOutput,
|
||||||
valsRuntime: a.valsRuntime,
|
getHelm: a.getHelm,
|
||||||
|
valsRuntime: a.valsRuntime,
|
||||||
}
|
}
|
||||||
|
|
||||||
return ld.Load(file, op)
|
return ld.Load(file, op)
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import "go.uber.org/zap"
|
||||||
type ConfigProvider interface {
|
type ConfigProvider interface {
|
||||||
Args() string
|
Args() string
|
||||||
HelmBinary() string
|
HelmBinary() string
|
||||||
|
KustomizeBinary() string
|
||||||
EnableLiveOutput() bool
|
EnableLiveOutput() bool
|
||||||
StripArgsValuesOnExitError() bool
|
StripArgsValuesOnExitError() bool
|
||||||
DisableForceUpdate() bool
|
DisableForceUpdate() bool
|
||||||
|
|
|
||||||
|
|
@ -20,13 +20,15 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
DefaultHelmBinary = state.DefaultHelmBinary
|
DefaultHelmBinary = state.DefaultHelmBinary
|
||||||
|
DefaultKustomizeBinary = state.DefaultKustomizeBinary
|
||||||
)
|
)
|
||||||
|
|
||||||
type desiredStateLoader struct {
|
type desiredStateLoader struct {
|
||||||
overrideKubeContext string
|
overrideKubeContext string
|
||||||
overrideHelmBinary string
|
overrideHelmBinary string
|
||||||
enableLiveOutput bool
|
overrideKustomizeBinary string
|
||||||
|
enableLiveOutput bool
|
||||||
|
|
||||||
env string
|
env string
|
||||||
namespace string
|
namespace string
|
||||||
|
|
@ -152,7 +154,7 @@ func (ld *desiredStateLoader) loadFileWithOverrides(inheritedEnv, overrodeEnv *e
|
||||||
}
|
}
|
||||||
|
|
||||||
func (a *desiredStateLoader) underlying() *state.StateCreator {
|
func (a *desiredStateLoader) underlying() *state.StateCreator {
|
||||||
c := state.NewCreator(a.logger, a.fs, a.valsRuntime, a.getHelm, a.overrideHelmBinary, a.remote, a.enableLiveOutput, a.lockFilePath)
|
c := state.NewCreator(a.logger, a.fs, a.valsRuntime, a.getHelm, a.overrideHelmBinary, a.overrideKustomizeBinary, a.remote, a.enableLiveOutput, a.lockFilePath)
|
||||||
c.LoadFile = a.loadFile
|
c.LoadFile = a.loadFile
|
||||||
return c
|
return c
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,8 +13,10 @@ import (
|
||||||
|
|
||||||
// GlobalOptions is the global configuration for the Helmfile CLI.
|
// GlobalOptions is the global configuration for the Helmfile CLI.
|
||||||
type GlobalOptions struct {
|
type GlobalOptions struct {
|
||||||
// helmBinary is the path to the Helm binary.
|
// HelmBinary is the path to the Helm binary.
|
||||||
HelmBinary string
|
HelmBinary string
|
||||||
|
// KustomizeBinary is the path to the Kustomize binary.
|
||||||
|
KustomizeBinary string
|
||||||
// File is the path to the Helmfile.
|
// File is the path to the Helmfile.
|
||||||
File string
|
File string
|
||||||
// Environment is the name of the environment to use.
|
// Environment is the name of the environment to use.
|
||||||
|
|
@ -93,6 +95,11 @@ func (g *GlobalImpl) HelmBinary() string {
|
||||||
return g.GlobalOptions.HelmBinary
|
return g.GlobalOptions.HelmBinary
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// KustomizeBinary returns the path to the Kustomize binary.
|
||||||
|
func (g *GlobalImpl) KustomizeBinary() string {
|
||||||
|
return g.GlobalOptions.KustomizeBinary
|
||||||
|
}
|
||||||
|
|
||||||
// KubeContext returns the name of the kubectl context to use.
|
// KubeContext returns the name of the kubectl context to use.
|
||||||
func (g *GlobalImpl) KubeContext() string {
|
func (g *GlobalImpl) KubeContext() string {
|
||||||
return g.GlobalOptions.KubeContext
|
return g.GlobalOptions.KubeContext
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,8 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
DefaultHelmBinary = "helm"
|
DefaultHelmBinary = "helm"
|
||||||
|
DefaultKustomizeBinary = "kustomize"
|
||||||
)
|
)
|
||||||
|
|
||||||
type StateLoadError struct {
|
type StateLoadError struct {
|
||||||
|
|
@ -53,6 +54,8 @@ type StateCreator struct {
|
||||||
|
|
||||||
overrideHelmBinary string
|
overrideHelmBinary string
|
||||||
|
|
||||||
|
overrideKustomizeBinary string
|
||||||
|
|
||||||
enableLiveOutput bool
|
enableLiveOutput bool
|
||||||
|
|
||||||
remote *remote.Remote
|
remote *remote.Remote
|
||||||
|
|
@ -60,7 +63,7 @@ type StateCreator struct {
|
||||||
lockFile string
|
lockFile string
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewCreator(logger *zap.SugaredLogger, fs *filesystem.FileSystem, valsRuntime vals.Evaluator, getHelm func(*HelmState) helmexec.Interface, overrideHelmBinary string, remote *remote.Remote, enableLiveOutput bool, lockFile string) *StateCreator {
|
func NewCreator(logger *zap.SugaredLogger, fs *filesystem.FileSystem, valsRuntime vals.Evaluator, getHelm func(*HelmState) helmexec.Interface, overrideHelmBinary string, overrideKustomizeBinary string, remote *remote.Remote, enableLiveOutput bool, lockFile string) *StateCreator {
|
||||||
return &StateCreator{
|
return &StateCreator{
|
||||||
logger: logger,
|
logger: logger,
|
||||||
|
|
||||||
|
|
@ -69,8 +72,9 @@ func NewCreator(logger *zap.SugaredLogger, fs *filesystem.FileSystem, valsRuntim
|
||||||
valsRuntime: valsRuntime,
|
valsRuntime: valsRuntime,
|
||||||
getHelm: getHelm,
|
getHelm: getHelm,
|
||||||
|
|
||||||
overrideHelmBinary: overrideHelmBinary,
|
overrideHelmBinary: overrideHelmBinary,
|
||||||
enableLiveOutput: enableLiveOutput,
|
overrideKustomizeBinary: overrideKustomizeBinary,
|
||||||
|
enableLiveOutput: enableLiveOutput,
|
||||||
|
|
||||||
remote: remote,
|
remote: remote,
|
||||||
|
|
||||||
|
|
@ -131,6 +135,13 @@ func (c *StateCreator) Parse(content []byte, baseDir, file string) (*HelmState,
|
||||||
state.DefaultHelmBinary = DefaultHelmBinary
|
state.DefaultHelmBinary = DefaultHelmBinary
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if c.overrideKustomizeBinary != "" && c.overrideKustomizeBinary != DefaultKustomizeBinary {
|
||||||
|
state.DefaultKustomizeBinary = c.overrideKustomizeBinary
|
||||||
|
} else if state.DefaultKustomizeBinary == "" {
|
||||||
|
// Let `helmfile --kustomize-binary ""` not break this helmfile run
|
||||||
|
state.DefaultKustomizeBinary = DefaultKustomizeBinary
|
||||||
|
}
|
||||||
|
|
||||||
state.logger = c.logger
|
state.logger = c.logger
|
||||||
state.valsRuntime = c.valsRuntime
|
state.valsRuntime = c.valsRuntime
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ func (testEnv stateTestEnv) MustLoadStateWithEnableLiveOutput(t *testing.T, file
|
||||||
}
|
}
|
||||||
|
|
||||||
r := remote.NewRemote(logger, testFs.Cwd, testFs.ToFileSystem())
|
r := remote.NewRemote(logger, testFs.Cwd, testFs.ToFileSystem())
|
||||||
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", r, enableLiveOutput, "").
|
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", "", r, enableLiveOutput, "").
|
||||||
ParseAndLoad([]byte(yamlContent), filepath.Dir(file), file, envName, true, true, nil, nil)
|
ParseAndLoad([]byte(yamlContent), filepath.Dir(file), file, envName, true, true, nil, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("unexpected error: %v", err)
|
t.Fatalf("unexpected error: %v", err)
|
||||||
|
|
@ -154,7 +154,7 @@ releaseNamespace: mynamespace
|
||||||
env := environment.Environment{
|
env := environment.Environment{
|
||||||
Name: "production",
|
Name: "production",
|
||||||
}
|
}
|
||||||
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", r, false, "").
|
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", "", r, false, "").
|
||||||
ParseAndLoad(yamlContent, filepath.Dir(yamlFile), yamlFile, "production", true, true, &env, nil)
|
ParseAndLoad(yamlContent, filepath.Dir(yamlFile), yamlFile, "production", true, true, &env, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("unexpected error: %v", err)
|
t.Fatalf("unexpected error: %v", err)
|
||||||
|
|
@ -241,7 +241,7 @@ overrideNamespace: myns
|
||||||
testFs.Cwd = "/example/path/to"
|
testFs.Cwd = "/example/path/to"
|
||||||
|
|
||||||
r := remote.NewRemote(logger, testFs.Cwd, testFs.ToFileSystem())
|
r := remote.NewRemote(logger, testFs.Cwd, testFs.ToFileSystem())
|
||||||
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", r, false, "").
|
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", "", r, false, "").
|
||||||
ParseAndLoad(yamlContent, filepath.Dir(yamlFile), yamlFile, "production", true, true, nil, nil)
|
ParseAndLoad(yamlContent, filepath.Dir(yamlFile), yamlFile, "production", true, true, nil, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("unexpected error: %v", err)
|
t.Fatalf("unexpected error: %v", err)
|
||||||
|
|
@ -525,7 +525,7 @@ releaseContext:
|
||||||
testFs.Cwd = "/example/path/to"
|
testFs.Cwd = "/example/path/to"
|
||||||
|
|
||||||
r := remote.NewRemote(logger, testFs.Cwd, testFs.ToFileSystem())
|
r := remote.NewRemote(logger, testFs.Cwd, testFs.ToFileSystem())
|
||||||
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", r, false, "").
|
state, err := NewCreator(logger, testFs.ToFileSystem(), nil, nil, "", "", r, false, "").
|
||||||
ParseAndLoad(yamlContent, filepath.Dir(yamlFile), yamlFile, "production", true, true, nil, nil)
|
ParseAndLoad(yamlContent, filepath.Dir(yamlFile), yamlFile, "production", true, true, nil, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("unexpected error: %v", err)
|
t.Fatalf("unexpected error: %v", err)
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,8 @@ const (
|
||||||
|
|
||||||
// ReleaseSetSpec is release set spec
|
// ReleaseSetSpec is release set spec
|
||||||
type ReleaseSetSpec struct {
|
type ReleaseSetSpec struct {
|
||||||
DefaultHelmBinary string `yaml:"helmBinary,omitempty"`
|
DefaultHelmBinary string `yaml:"helmBinary,omitempty"`
|
||||||
|
DefaultKustomizeBinary string `yaml:"kustomizeBinary,omitempty"`
|
||||||
|
|
||||||
// DefaultValues is the default values to be overrode by environment values and command-line overrides
|
// DefaultValues is the default values to be overrode by environment values and command-line overrides
|
||||||
DefaultValues []any `yaml:"values,omitempty"`
|
DefaultValues []any `yaml:"values,omitempty"`
|
||||||
|
|
@ -1199,6 +1200,7 @@ func (st *HelmState) PrepareCharts(helm helmexec.Interface, dir string, concurre
|
||||||
if chartification != nil && helmfileCommand != "pull" {
|
if chartification != nil && helmfileCommand != "pull" {
|
||||||
c := chartify.New(
|
c := chartify.New(
|
||||||
chartify.HelmBin(st.DefaultHelmBinary),
|
chartify.HelmBin(st.DefaultHelmBinary),
|
||||||
|
chartify.KustomizeBin(st.DefaultKustomizeBinary),
|
||||||
chartify.UseHelm3(true),
|
chartify.UseHelm3(true),
|
||||||
chartify.WithLogf(st.logger.Debugf),
|
chartify.WithLogf(st.logger.Debugf),
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
filepath: input.yaml
|
filepath: input.yaml
|
||||||
helmBinary: helm
|
helmBinary: helm
|
||||||
|
kustomizeBinary: kustomize
|
||||||
environments:
|
environments:
|
||||||
default: {}
|
default: {}
|
||||||
repositories:
|
repositories:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue