mirror of
https://github.com/helmfile/helmfile.git
synced 2026-09-30 14:22:56 +02:00
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:
@@ -101,6 +101,7 @@ ${kubectl} create namespace ${test_ns} || fail "Could not create namespace ${tes
|
||||
. ${dir}/test-cases/hcl-secrets.sh
|
||||
. ${dir}/test-cases/issue-1749.sh
|
||||
. ${dir}/test-cases/issue-1893.sh
|
||||
. ${dir}/test-cases/state-values-set-cli-args-in-environments.sh
|
||||
|
||||
# ALL DONE -----------------------------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
state_values_set_cli_args_in_environments_input_dir="${cases_dir}/state-values-set-cli-args-in-environments/input"
|
||||
state_values_set_cli_args_in_environments_output_dir="${cases_dir}/state-values-set-cli-args-in-environments/output"
|
||||
|
||||
state_values_set_cli_args_in_environments_tmp=$(mktemp -d)
|
||||
state_values_set_cli_args_in_environments_reverse=${state_values_set_cli_args_in_environments_tmp}/state.values.set.cli.args.build.yaml
|
||||
|
||||
test_start "state values set cli args in environments"
|
||||
info "Comparing state values set cli args environments output ${state_values_set_cli_args_in_environments_reverse} with ${state_values_set_cli_args_in_environments_output_dir}/output.yaml"
|
||||
|
||||
${helmfile} -f ${state_values_set_cli_args_in_environments_input_dir}/helmfile.yaml.gotmpl template $(cat "$state_values_set_cli_args_in_environments_input_dir/helmfile-extra-args") --skip-deps > "${state_values_set_cli_args_in_environments_reverse}" || fail "\"helmfile template\" shouldn't fail"
|
||||
./dyff between -bs "${state_values_set_cli_args_in_environments_output_dir}/output.yaml" "${state_values_set_cli_args_in_environments_reverse}" || fail "\"helmfile template\" should be consistent"
|
||||
echo code=$?
|
||||
|
||||
test_pass "state values set cli args in environments"
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
---
|
||||
foo: {{ .Values.foo }}
|
||||
+1
@@ -0,0 +1 @@
|
||||
--state-values-set foo=bar
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
environments:
|
||||
default:
|
||||
values:
|
||||
- environments.yaml.gotmpl
|
||||
---
|
||||
releases:
|
||||
- name: state-value-set-args-environments
|
||||
chart: ../../../charts/raw
|
||||
values:
|
||||
- templates:
|
||||
- |
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: test
|
||||
data:
|
||||
foo: {{ .Values.foo }}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
---
|
||||
# Source: raw/templates/resources.yaml
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: test
|
||||
data:
|
||||
foo: bar
|
||||
Reference in New Issue
Block a user