multiversectl GitHub

Commands

Every command, what it does and the arguments it takes.

Every command

CommandWhat it doesExample
bootstrap <manifest>Set up a workspace: record it, clone its repos, run doctor. Takes a path or a git URL. --name sets the name it is recorded under (default: from the root directory); other recorded workspaces are kept.multiversectl bootstrap ./multiverse.yaml --root ~/acme
workspacesList the workspaces bootstrapped on this machine; * marks the current one.multiversectl workspaces
use <workspace>Make a workspace the one commands act on by default. -w overrides it for a single command.multiversectl use acme
new <number|name>Create a universe: one worktree per repo, secrets and state. Alias create. A universe is numbered or named after a branch. --branch (repeatable) overrides the branch: a bare name for every repo, repo=branch for one. --note records why it exists.multiversectl new fix/login
up <universe> [app ...]Start a universe, all apps or only those named. --with adds optional service groups. Alias start.multiversectl up 3 api --with workers
down <universe> [app ...]Stop a universe; keeps data and checkouts. Alias stop.multiversectl down 3
rm <universe>Destroy a universe: worktrees, containers, volumes and state. Asks first; --yes skips. Aliases remove, destroy.multiversectl rm 3 --yes
lsList universes: a table per universe with a row per app — its branch, its worktree on disk, its service, host and URL — and a row for every repository checked out with no services of its own. -o wide swaps the addresses for every service of every app — what is on, what is off and why, and which host ports it publishes — followed by an on disk block naming each repository's worktree, runtime project and volumes. -o list is one line per universe. The three combine with commas. Alias list.multiversectl ls -o wide
urls <universe>Print a universe's URLs, one per line.multiversectl urls 3
doctor [N]Check the host, the workspace and optionally a universe; exits 1 on any failure.multiversectl doctor 3
exec <universe> <app> -- <cmd>Run a command in a running container of a universe. --service picks one when the app has several. Streams straight to your terminal.multiversectl exec 3 api --service db -- psql -U postgres
run <universe> <app> -- <cmd>Run a command in a fresh one-off container instead, for a task that should not need the service up — a migration, a shell on a stopped app.multiversectl run 3 api -- python manage.py migrate
env <universe>Print a universe's environment as export lines for your shell.eval "$(multiversectl env 3)"
proxy up|down|statusStart, stop, or inspect the shared proxy and its network. Universes keep their data when it stops.multiversectl proxy status
updateReplace this binary with the latest release.multiversectl update
versionPrint version, commit, build date and Go version.multiversectl version

Global flags: -f, --manifest path to the manifest; -w, --workspace which recorded workspace to act on; --root workspace root (default $MULTIVERSECTL_ROOT, the manifest's spec.root, the saved config, or the manifest's directory); --no-color; -v, --verbose shows the commands being run. <universe> is a positive integer.