Optionally error when subhelmfiles do not exist (#1245)
This prevents typos in helmfiles from silently preventing operations from running. The default behavior is to print a warning, to preserve backwards compatibility.
This commit is contained in:
parent
9e4bc6e7fc
commit
eb8ab54865
|
|
@ -224,6 +224,9 @@ helmfiles:
|
||||||
# The nested-state file is locally checked-out along with the remote directory containing it.
|
# The nested-state file is locally checked-out along with the remote directory containing it.
|
||||||
# Therefore all the local paths in the file are resolved relative to the file
|
# Therefore all the local paths in the file are resolved relative to the file
|
||||||
path: git::https://github.com/cloudposse/helmfiles.git@releases/kiam.yaml?ref=0.40.0
|
path: git::https://github.com/cloudposse/helmfiles.git@releases/kiam.yaml?ref=0.40.0
|
||||||
|
# If set to "Error", return an error when a subhelmfile points to a
|
||||||
|
# non-existent path. The default behavior is to print a warning and continue.
|
||||||
|
missingFileHandler: Error
|
||||||
|
|
||||||
#
|
#
|
||||||
# Advanced Configuration: Environments
|
# Advanced Configuration: Environments
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,11 @@ type HelmState struct {
|
||||||
|
|
||||||
runner helmexec.Runner
|
runner helmexec.Runner
|
||||||
valsRuntime vals.Evaluator
|
valsRuntime vals.Evaluator
|
||||||
|
|
||||||
|
// If set to "Error", return an error when a subhelmfile points to a
|
||||||
|
// non-existent path. The default behavior is to print a warning. Note the
|
||||||
|
// differing default compared to other MissingFileHandlers.
|
||||||
|
MissingFileHandler string `yaml:"missingFileHandler"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// SubHelmfileSpec defines the subhelmfile path and options
|
// SubHelmfileSpec defines the subhelmfile path and options
|
||||||
|
|
@ -1801,6 +1806,11 @@ func (st *HelmState) ExpandedHelmfiles() ([]SubHelmfileSpec, error) {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if len(matches) == 0 {
|
if len(matches) == 0 {
|
||||||
|
err := fmt.Errorf("no matches for path: %s", hf.Path)
|
||||||
|
if st.MissingFileHandler == "Error" {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
fmt.Println(err)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
for _, match := range matches {
|
for _, match := range matches {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue