helmfile/pkg
Benjamin Zores fad470f38a
feat: allow for HCL values override (#2402)
* feat: allow for HCL values override

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* fix: ensure overriden HCL expression uses range from latest defined block vars

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: implement HCL cty values override tests

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* docs: better describe new behavior

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* fix: add extra parenthesis for better readability

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: implement variable override in decodeGraph() function, AFTER interpolation, providing back access to hv.* and local.* accessors

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: implement better HCL test to override values using local.* and hv.* accessors and pre-processing function calls

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: remove deprecated hclParseError() function (and test)

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: don't let HCL override with null value win

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: proper test condition on HCL map type merge (and tests)

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: more accurate HCL test error statement

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: ensure HCL DAG graph collects dependencies from ALL definitions to ensure proper evaluation order even if only earlier definitions have dependencies

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: verify HCL mixed-types merges are correctly supported

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* docs: improved environment values precedence section with HCL override support

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: HCL test spell-check, linter failure

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: implement HCL override e2e tests

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* fix: correct hcl_loader test error message

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* fix: ensure correct cty type is returned in case of object/map hcl merge

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* fix: ensure hcl locals from a previous definition/file do not leak into this evaluation when merging

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* fix: correct e2e hcl_override test; missing line in output string comparison

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* docs: spell-check on HCL doc

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

* chore: update comment for accuracy in HCL read routine

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>

---------

Signed-off-by: Benjamin Zores <benjamin.zores@gmail.com>
Co-authored-by: yxxhero <11087727+yxxhero@users.noreply.github.com>
2026-02-24 18:02:20 +08:00
..
app fix: helmDefaults.skipRefresh ignored in runHelmDepBuilds (#2415) 2026-02-22 14:13:05 +05:30
argparser fix #1095 (#1100) 2023-11-01 11:55:55 +08:00
cluster 🐛 Fix four critical issues: environment merging, kubeVersion detection, lookup() with kustomize, and Helm 4 color flags (#2276) 2025-11-21 08:32:54 +08:00
config feat: add `helmfile unittest` command for helm-unittest integration (#2400) 2026-02-16 09:45:10 +08:00
environment fix: array merge regression - layer arrays now replace defaults (#2367) 2026-01-18 14:04:54 +08:00
envvar Add parameter to render helmfile as go template without .gotmpl extension (#2312) 2025-12-09 14:41:47 +09:00
errors build(deps): bump golangci/golangci-lint-action from 6 to 7 (#1975) 2025-03-28 07:52:06 +08:00
event feat: include func support (#1187) 2023-12-04 21:51:01 +08:00
exectest feat: add `helmfile unittest` command for helm-unittest integration (#2400) 2026-02-16 09:45:10 +08:00
filesystem refactor(filesystem): add CopyDir method and optimize Fetch function (#2111) 2025-07-28 16:10:25 -04:00
hcllang feat: allow for HCL values override (#2402) 2026-02-24 18:02:20 +08:00
helmexec fix: support XDG-style multiple paths in HELM_PLUGINS (#2412) 2026-02-20 15:27:34 +08:00
maputil fix: array merge regression - layer arrays now replace defaults (#2367) 2026-01-18 14:04:54 +08:00
plugins Fix AWS SDK debug logging by making it configurable (issue #2270) (#2290) 2025-11-24 18:27:04 +08:00
policy build(deps): bump golangci/golangci-lint-action from 6 to 7 (#1975) 2025-03-28 07:52:06 +08:00
remote fix: include query params in HTTP getter cache key (#2399) 2026-02-14 09:31:53 +08:00
runtime refactor(yaml): switch yaml library import paths from gopkg.in to go.yaml.in (#2114) 2025-08-01 11:28:39 +08:00
state fix: helmDefaults.skipRefresh ignored in runHelmDepBuilds (#2415) 2026-02-22 14:13:05 +05:30
testhelper fix: eliminate os.Chdir in sequential helmfiles to fix relative path resolution (#2410) 2026-02-22 09:21:46 +08:00
testutil feat: add `helmfile unittest` command for helm-unittest integration (#2400) 2026-02-16 09:45:10 +08:00
tmpl refactor(yaml): switch yaml library import paths from gopkg.in to go.yaml.in (#2114) 2025-08-01 11:28:39 +08:00
yaml refactor(yaml): switch yaml library import paths from gopkg.in to go.yaml.in (#2114) 2025-08-01 11:28:39 +08:00