Skip to main content

atmos kubernetes plan

Give Kubernetes components a Terraform-style preview step. plan shows what a stack-configured component would create or change before you approve the deployment workflow.

Configure Kubernetes Components

plan uses the same Kubernetes component stack configuration as diff: manifest inputs, rendered values, Auth, hooks, and dependencies.

Usage

atmos kubernetes plan <component> --stack <stack>
atmos kubernetes plan --affected --base origin/main

In v1, plan is an alias of atmos kubernetes diff. It renders the final manifests, validates them with Kubernetes server-side dry-run apply, reads live objects, and reports create, change, and no-change results — including the per-object unified diff in the terminal and, in CI, a collapsible Kubernetes Diff block in the job summary (Secret objects are omitted). See atmos kubernetes diff for example output.

This gives Kubernetes components a Terraform-shaped preview command while keeping the implementation simple. Future versions can extend plan with structured plan files or approval artifacts without changing diff.

Example

atmos kubernetes plan argocd -s plat-ue2-dev

Plan components filtered by tags or labels (composes with --all/--affected to narrow the selected set further):

atmos kubernetes plan --all --tags production,tier-1
atmos kubernetes plan --affected --labels cost-center=platform

Flags

--stack, -s (required)

Atmos stack.

--all (optional)

Plan all Kubernetes components in dependency order.

--affected (optional)

Plan affected Kubernetes components and their dependencies.
--include-dependents (optional)
With --affected, include dependent Kubernetes components.

--tags (optional)

Filter by tags (comma-separated, matches any): --tags=production,tier-1. Composes with --all/--affected to narrow the selected set further; cannot be combined with a single component argument.

--labels (optional)

Filter by labels (comma-separated key=value pairs, matches all): --labels=cost-center=platform,compliance=sox. Composes with --all/--affected/--tags; cannot be combined with a single component argument.