Skip to main content
README.md1.4 KB
View on GitHub

Notes

This example deploys a Helm release (nginx) to a local Kubernetes sandbox — no EKS, no cloud, no aws eks update-kubeconfig. The sandbox is an Atmos emulator component running k3s: a stack-scoped container Atmos starts and stops for you.

A single kubernetes/emulator identity in atmos.yaml binds every Helmfile component to the sandbox. When the identity is active, Atmos harvests the k3s kubeconfig and exports KUBECONFIG automatically — so Helmfile runs against the local cluster with no kubeconfig to manage. The nginx Helmfile component is reused verbatim from ../demo-helmfile; only the cluster source changed (emulator instead of a hand-rolled docker-compose.yml).

Usage

A container runtime (Docker or Podman) is required. The Helmfile component declares its helmfile, helm, kubectl, and kustomize dependencies, so Atmos installs and adds those tools to PATH through the project toolchain before running Helmfile:

atmos emulator up kubernetes -s local   # start the local k3s sandbox
atmos helmfile apply demo -s local # deploy the nginx release to it

atmos helmfile destroy demo -s local # remove the release
atmos emulator down kubernetes -s local # stop and remove the sandbox container

The atmos test custom command runs the full apply/destroy lifecycle.