--- title: "Promote to production" canonical: "https://admiral.io/docs/get-started/promote-to-production" description: "Promote your tested changeset from dev to prod: Admiral copies changes into a new prod changeset, re-based on prod's own state, with per-env values resolved." --- # Promote to production {/* OUTLINE / DRAFT. Step 5 = AHA 1b: the same tested change promoted dev -> prod in one action. Concepts: promotion = copy (not link), re-based on prod's own head, per-env values resolve against prod. Close the loop and point onward. */} You have a working setup in `dev`: a workload wired to an infrastructure output. Promotion ships that same, tested setup to `prod`. Promotion is a **copy**, not a link: Admiral clones the changes into a new changeset in `prod`, re-based on `prod`'s own state, and the per-environment values resolve against `prod`'s variables. ## 1. Promote the changeset [#1-promote-the-changeset] ### CLI ```bash # TODO: confirm the promote/copy verb and target-env flag. admiral changeset promote --to demo/prod ``` ### Web Open the applied `dev` changeset and choose **Promote to prod**. Admiral creates a new, open changeset in `prod`. ## 2. Review against prod and apply [#2-review-against-prod-and-apply] The promoted changeset is reviewed against `prod`'s own deployed state, not `dev`'s. Plan it, check the diff, and apply. ### CLI ```bash admiral changeset plan admiral changeset apply ``` ### Web Review the diff in the `prod` changeset, then **Apply**. {/* TODO: call out that prod got the SAME definitions configured for prod (per-env values), reinforcing "ship the same artifact, configured for its destination". */} ## You're done [#youre-done] You connected a cluster, deployed a real workload, wired an infrastructure output into it, and promoted the whole thing from dev to prod - the core Admiral loop end to end. ## Where to go next [#where-to-go-next] - [Concepts](https://admiral.io/docs/concepts.md): Understand the model behind what you just did - [Agent Lifecycle](https://admiral.io/docs/guides/agent-lifecycle.md): Operate agents beyond a local kind cluster - [CLI Reference](https://admiral.io/docs/reference/cli.md): Every command in depth {/* TODO (Aha 2 / activation): a follow-on guide for "connect your own repo + cloud" - the real-world version of this walkthrough. Lives in Guides, linked from here. */}