CLI reference / host / cargo

stado host cargo

Invocation

stado-0e0e71c2 host cargo [OPTIONS] --manifest-path <MANIFEST_PATH> --revision <REVISION> <TARGET> <OPERATION> [-- <ARGUMENTS>...]

Purpose

Run one Cargo operation on a committed revision on TARGET. The revision is exported from the canonical checkout holding MANIFEST_PATH (no uncommitted edit is read), delivered into a fresh managed run on TARGET and compiled there `--locked` with the revision's own `rust-toolchain.toml`, the declared compiler cache and the host's one shared Cargo target in its build cache. `build` is `--release` and brings each `--bin` back to `<manifest directory>/target/host-cargo/<commit>/`. The run is removed afterwards whatever Cargo answered; the exit status is Cargo's.

Required inputs and options

Input or optionContract
<TARGET>Positional input; required or optional as shown in the invocation.
<OPERATION>Possible values: - build: A release build whose binaries come back to this machine - check - clippy - test [ARGUMENTS]... Further Cargo arguments, after `--`
--manifest-path <MANIFEST_PATH>The crate's Cargo.toml inside its canonical checkout
--revision <REVISION>The commit to run, as the checkout names it
--bin <BINARIES>A binary target; repeat for each. Required by `build`, which brings each one back
--jsonOne receipt: commit, Cargo's streams and exit status, the binaries brought back with their digests, and the free space the run took

Output and state effect

It performs the operation described above and emits its operator result on standard output or standard error. Any state change is limited to the resources and records named by the purpose and options on this page.

Refusals

  • Required by `build`, which brings each one back
  • Before dispatch, Stado refuses a missing required token shown in the invocation, an unknown option, or a value outside a listed value set; argument-usage failures exit with code 2.