Part of #43. Depends on the !kubectl core (#68).
What
The helmfile backend: helmfile: source → helmfile, via the helmfile CLI.
state: present → helmfile apply / sync; absent → helmfile destroy; fetched → helmfile status; dry_run: true → helmfile template.
save: exposes the rendered output.
Anchors
src/modules/commands/kubernetes/helmfile.rs (new) — implements KubernetesBackend via the helmfile CLI subprocess.
- The
helmfile source branch is already accepted by infer_source (chunk 1).
Tests
- Unit (no cluster): helmfile CLI argv construction per state×source.
- Integration (cluster):
sync a helmfile → releases deploy; destroy removes them.
Part of #43. Depends on the
!kubectlcore (#68).What
The helmfile backend:
helmfile:source → helmfile, via the helmfile CLI.state: present→helmfile apply/sync;absent→helmfile destroy;fetched→helmfile status;dry_run: true→helmfile template.save:exposes the rendered output.Anchors
src/modules/commands/kubernetes/helmfile.rs(new) — implementsKubernetesBackendvia the helmfile CLI subprocess.helmfilesource branch is already accepted byinfer_source(chunk 1).Tests
synca helmfile → releases deploy;destroyremoves them.