mirror of
https://github.com/holos-run/holos.git
synced 2026-03-20 01:04:59 +00:00
Without this patch migrating from [helm hierarchies] to Holos requires the user to unify the value hierarchy. This is a problem because helm hierarchies are difficult to unify because it's not clear if or why a value is used in the final results. This makes it difficult to identify how to resolve conflicts. This patch adds `valueFiles` field to the Helm component kind. This field is intended to provide a direct migration path from the ApplicationSet.spec.template.spec.sources.helm.valueFiles field. With this patch, users can directly migrate the values files to CUE using `@embed`, then directly migrate the valueFiles field to reference the values from within CUE. Note we actively discourage the use of Helm value hierarchies. The feature is intended as a temporary migration tool. We encourage the use of CUE unification instead. After migration, the valueFiles field should be refactored to the values field as one unified structure in CUE. The valueFiles field makes this second order migration easier becuase we can inspect and verify the complete rendered output, allowing us to determine if a value is actually used in the final configuration or is overridden. [helm hierarchies]: https://medium.com/containers-101/using-helm-hierarchies-in-multi-source-argo-cd-applications-for-promoting-to-different-gitops-133c3bc93678