helmfile/cmd
yxxhero a94fdf4194
feat: add support for helm 4 --server-side upgrade flag (#2641)
* feat: add support for helm 4 --server-side upgrade flag

Add support for the helm 4 upgrade flag --server-side which accepts
"true", "false", or "auto" (default "auto"). This allows users to
explicitly control server-side apply behavior, which is needed for
releases originally installed with Helm 3 and being managed with Helm 4.

The flag can be configured via:
- CLI: --server-side flag on sync, apply, and diff commands
- helmDefaults.serverSide in helmfile.yaml
- releases[].serverSide per-release override

Precedence: release-level > CLI flag > helmDefaults.
Errors are returned when serverSide is set but running Helm 3, or when
an invalid value is provided.

Closes #2640

Signed-off-by: yxxhero <aiopsclub@163.com>

* test: update TestGenerateID expected hashes for new ServerSide field

Adding ServerSide *string to ReleaseSpec changes spew's %#v output and
shifts the FNV hash used by generateValuesID. Update the hard-coded want
values to the new deterministic hashes.

Signed-off-by: yxxhero <aiopsclub@163.com>

---------

Signed-off-by: yxxhero <aiopsclub@163.com>
2026-06-16 08:24:47 +08:00
..
apply.go feat: add support for helm 4 --server-side upgrade flag (#2641) 2026-06-16 08:24:47 +08:00
build.go Optimize cmd pkg (#384) 2022-10-05 11:02:24 +09:00
cache.go Merge branch 'main' into update_golang_lint 2022-08-14 12:21:10 +09:00
create.go feat: add 'create' subcommand to scaffold helmfile deployment projects (#2574) 2026-05-03 19:03:11 +08:00
deps.go fix --debug flag 2022-10-25 08:24:23 +08:00
destroy.go Create DeleteWait and DeleteTimeout parameters for Destroy (#1177) 2023-12-05 08:38:37 +08:00
diff.go feat: add support for helm 4 --server-side upgrade flag (#2641) 2026-06-16 08:24:47 +08:00
fetch.go feat: add --write-output flag to helmfile fetch for air-gapped environments (#2572) 2026-05-03 18:32:30 +08:00
init.go Add subcommand init for checks and installs helmfile deps (#389) 2022-11-03 14:51:30 +08:00
lint.go feat: add/expose cli flags (#771) 2023-04-02 14:53:52 +08:00
list.go Optimize cmd pkg (#384) 2022-10-05 11:02:24 +09:00
print_env.go feat: add print-env command (#2279) 2025-11-28 08:46:37 +08:00
repos.go fix: repos command help message (#698) 2023-02-15 07:23:50 +08:00
root.go feat: support HELMFILE_* env vars for more global flags (#2606) 2026-05-22 09:16:52 +08:00
root_test.go fix: prevent panic in helmfile init on plugin install errors (#2401) 2026-02-18 08:57:11 +08:00
show-dag.go Update DAG with dependencies (#1477) 2024-04-27 07:37:28 +08:00
status.go fix --debug flag 2022-10-25 08:24:23 +08:00
sync.go feat: add support for helm 4 --server-side upgrade flag (#2641) 2026-06-16 08:24:47 +08:00
template.go feat: support .Environment.* in --output-dir-template (#2375) 2026-02-14 11:54:43 +08:00
test.go feat: add/expose cli flags (#771) 2023-04-02 14:53:52 +08:00
unittest.go feat: add `helmfile unittest` command for helm-unittest integration (#2400) 2026-02-16 09:45:10 +08:00
write-values.go feat: add/expose cli flags (#771) 2023-04-02 14:53:52 +08:00