feat: inject cli state values (--state-values-set) into environment templating context (#1917)

* feat: inject cli state values (--state-values-set) into environment templating context

Signed-off-by: Vincent Chenal <vincent.chenal@protonmail.com>

* test: added envvals_loader unit test for environment values

Signed-off-by: Vincent Chenal <vincent.chenal@protonmail.com>

* test: added 'state values set cli args in environments' integration test

Signed-off-by: Vincent Chenal <vincent.chenal@protonmail.com>

* fix: merge environments before loadValuesEntries

Signed-off-by: Vincent Chenal <vincent.chenal@protonmail.com>

* fix: 'state values set cli args in environments' integration test

Signed-off-by: Vincent Chenal <vincent.chenal@protonmail.com>

---------

Signed-off-by: Vincent Chenal <vincent.chenal@protonmail.com>
This commit is contained in:
Vince-Chenal
2025-02-14 20:49:07 +08:00
committed by GitHub
parent 0d863b3c05
commit e33b4725ea
10 changed files with 69 additions and 2 deletions
+5 -1
View File
@@ -278,7 +278,11 @@ func (c *StateCreator) loadEnvValues(st *HelmState, name string, failOnMissingEn
valuesFiles = append(valuesFiles, f)
}
envValuesEntries := append(valuesFiles, envSpec.Values...)
valuesVals, err = st.loadValuesEntries(envSpec.MissingFileHandler, envValuesEntries, c.remote, ctxEnv, name)
loadValuesEntriesEnv, err := ctxEnv.Merge(overrode)
if err != nil {
return nil, err
}
valuesVals, err = st.loadValuesEntries(envSpec.MissingFileHandler, envValuesEntries, c.remote, loadValuesEntriesEnv, name)
if err != nil {
return nil, err
}