Open Michael-Kruggel opened 1 month ago
This is relatively simple to accomplish internally to Zarf by changing string
to interface{}
on the SetVariables field however the wall this is effectively blocked on (https://github.com/spf13/viper/issues/1014) would need a workaround like what UDS CLI has done: https://github.com/defenseunicorns/uds-cli/blob/main/src/cmd/root.go#L151 (which as-written there only supports YAML) or would need to swap around libraries to something else.
The bright side is that Zarf does not process config files like this:
package:
deploy:
set:
test:
aT: thingT
bT: to-beT
so it would be easier to stay away from making this a breaking change.
Tacking onto this existing issue - besides maps/lists there are also issues with passing boolean values in (they end up getting cast into strings which can cause issues in certain helm templates due to "false"
being a truthy value).
Steps to reproduce
Expected result
Value of variable is set in chart values
Actual Result
No value is set, chart's default value is used
Visual Proof (screenshots, videos, text, etc)
Example
zarf.yaml
component:Example
zarf-config.yaml
:Values in k9s: