Repository navigation
pip install robovast-client # drive a RoboVAST service someone runs for you
pip install "robovast[nav,roqsim]" # the core: configuration, results, the MCP server
pip install robovast-cluster # deploy and run the service on a Kubernetes clusterThen vast cluster setup deploys the service — into minikube on your own machine, or a cluster for a team. Container images for this version, tagged 2.2.1: ghcr.io/cps-test-lab/robovast and robovast-roqsim for linux/amd64 and linux/arm64, and robovast-controller and robovast-sidecar, which run only in the cluster, for linux/amd64.
What changed
- Pinned simulator — the roqsim image builds the roqsim commit its Dockerfile pins, the last this line supports
(#900) - MCP image tag —
start_campaigntakesimage_project_tag, as the CLI's--image-project-tagdoes
(#709) - Screenshots kept — a simulation screenshot is stored and addressable by path, not only returned inline
(#708) - World check — the project check reports what the simulator warns about a world's start state
(#715) - Exit codes —
vast campaign waitandvast image waitdefine their codes once; help, docs and MCP render that list
(#719) - Admission — a pass is linear in the queue, sizes a queued job once per node, and reads the cluster outside its lock
(#699, #881) - Free disk — admission takes a node's free disk as the kubelet measures it, less its eviction threshold
(#892) - Postprocessing — a failed conversion delivers what it converted; an OOM-killed stage step fails its pod instead of holding it
(#880, #899) - Stall report — a campaign whose batch has finished every run is not called queued
(#707) - Archived campaigns — read as archived on the exec path too, so a key they ran without does not refuse them
(#692) - roqsim socket — a ros-shape run names its control socket on
/ipcfor simulator and scenario alike
(#894) - roqsim image — no longer installs
roqsim_webctrl, which roqsim does not ship
(#898)