strategy: incremental rejects --bluegreen and --promote; use stage and activate for that strategy.
For an existing preview workflow, retain its reviewed image/legacy configuration. Rehearse promotion and state handling on a test workspace first. There are two preview modes:
--bluegreen preview — clone the whole workspace
Best for production service hosts. preview copy-on-write clones the entire workspace into a hidden preview VM, overlays your new code onto it, and serves it at <app>-pv-<id>.rigbox.dev. Production is untouched until you promote.
$PORT juggling), the whole multi-app workspace is previewed as a unit, and promote re-homes production onto the preview VM with no restart — an in-place edge route swap. The promoted VM inherits the workspace name and SSH routing, so subsequent name-based access resolves to the promoted workspace.
Promote swaps the underlying VM. That’s seamless for HTTP, but an open SSH session can’t follow it — it stays on the old VM, which is retired later according to platform retention. The promote warns you if anyone’s actively in the old VM, and the old VM is never auto-retired while a session is live. Re-attach with
rig ssh <workspace> after promote to land on the new VM.<name>-rollback-<id> and kept as an instant rollback target until it’s retired. To revert a promote before then, call the rollback endpoint on the promoted workspace:
--bluegreen <suffix> — in-VM sibling
Best for a workspace people actively work in. <suffix> stages a sibling app <base>-<suffix> on its own subdomain inside the same workspace VM. The VM never changes — so SSH sessions, files, and other processes survive — but apps must bind $PORT, and promote does a brief brief app restart.
--promote atomically swaps the production subdomain to the sibling, keeping the old app as a rollback target until you delete it.
Which to use
See also
- Deploying with
rig deploy— the full deploy flow and modes. - Releases & rollback — frozen-image releases and
rig rollback.