Deployment
A deployment is solver code under run/ and its dataset under data/, published under a name your
company owns. aura deploy creates one from the config table describing it; every other
verb here acts on one that already exists.
aura deploy
Section titled “aura deploy”aura deploy --dry-run # print the resolved file list, upload nothingaura deploy # upload, then run the server-side runnability check| Option | Does |
|---|---|
[name] |
Which table to read, when the file defines more than one |
--config <path> |
The pyproject.toml to read (default: the nearest one with [tool.aura]) |
--dry-run |
Print what would upload, change nothing |
--verbose |
Log every file — + new, ↻ replaced — instead of one summary line per run |
The uploads run, then the runnability check; a failing check exits non-zero. On success it prints the
aura project create command for what you just deployed.
Redeploying is a sync
Section titled “Redeploying is a sync”Remote run/ and data/ are made to match your local folders: after the uploads, remote files no
longer present locally are removed, so renames and deletions leave nothing stale. A failed upload
stops the sync before it prunes.
Agent config syncs only where you declared it. Omitting agents_md or skills_folder leaves whatever
is already uploaded alone; declaring one makes the local tree authoritative, and remote entries
missing locally are then pruned.
Commands
Section titled “Commands”| Command | Does |
|---|---|
aura deployment list |
List your company’s deployments |
aura deployment check [name] |
Run the server-side runnability check |
aura deployment delete <handle|name> |
Delete a deployment and every file in it (y/N prompt; --yes to skip) |
aura deployment file list [name] |
Tree of deployment files (--prefix <path>, --flat) |
aura deployment file upload <local> <remote> [name] |
Upload one file, replacing whatever is at that path |
aura deployment file delete <remote> [name] |
Remove one file (y/N prompt; --yes to skip) |
aura deployment instructions show [name] |
Print the instructions it ships |
aura deployment instructions set <file> [name] |
Replace them with a file’s contents |
aura deployment instructions delete [name] |
Remove them |
aura deployment skills list [name] |
List its skills, with descriptions |
aura deployment skills show <skill> [name] |
Print one skill in full, file contents included |
aura deployment skills set <dir> [name] |
Upload one skill from a directory |
aura deployment skills delete <skill> [name] |
Remove one skill |
Changing a deployment’s instructions or skills sets what future projects inherit. It never reaches a project that already exists — that project holds its own copy, and pulls a revision in only when you ask it to.
Changing one file
Section titled “Changing one file”aura deploy is a sync, so it prunes. To swap in one data file or patch one solver module, use
aura deployment file, which touches nothing but the path you name.
aura deployment file list --prefix run/src/ # what is up thereaura deployment file upload ./src/solver/model.py run/src/solver/model.pyaura deployment file upload ./tuesday.csv data/orders.csv # rename on the way upaura deployment file delete data/stale.csv --yes- The remote path is always explicit. A deployment’s layout is not your local one —
aura deployputsmodel_folderunderrun/anddata_folderunderdata/— so nothing is inferred from the local path. One file per command. - Uploads must land under
run/ordata/. Nothing else is part of the run contract.file deletetakes any pathfile listprints, since removing a file cannot create a stray one. - The content type comes from the remote path, which is the name a run reads — so renaming on the way up types the file by its destination.
- The runnability check runs after both. Pass
--no-checkto skip it, for the middle of a&&chain.
Naming a deployment
Section titled “Naming a deployment”[name] in brackets is optional: omit it and the command reads the name from the nearest
config table, or from --config <path>. It never means “every deployment” — each command
acts on exactly one, and outside a model folder it fails rather than guessing.
cd my-model/solveraura deployment skills list # the deployment this folder definesaura deployment skills list vrp # named outright, from anywhereEither spelling works: vrp, or the full acme/vrp handle you get from aura project create. A
handle whose company is not yours is refused rather than resolving to your own deployment of that
name.