bus-vm — AI Platform VM status client

Runtime Status

bus vm is the domain client for the AI Platform VM/runtime API. Use it when you need the GPU runtime lifecycle state directly.

Common task

Authenticate first with bus auth. The auth-service session must be verified and approved before the API token request can succeed; confirm that with bus auth status, then request a token that includes the VM status resource enabled for your account:

export BUS_AUTH_API_URL=https://api.example.test/api/v1/auth
bus auth login --email user@example.com
bus auth verify --email user@example.com --otp <otp-from-email>
bus auth status
bus auth token --resources "vm:read"

bus auth token saves the API token in the default Bus auth token file used by bus vm. Point bus vm at the matching AI Platform API origin:

bus vm --api-url https://api.example.test status

The token must be an AI Platform bearer JWT, usually obtained through bus auth. By default the CLI reads the normal Bus API token from ~/.config/bus/auth/api-token or ${BUS_CONFIG_DIR}/auth/api-token. --token-file, BUS_AI_TOKEN, and BUS_API_TOKEN override that default. Literal token values are not accepted on the command line. The token subject is the Bus identity used by the AI Platform.

bus vm reads the VM API directly. bus status vm may show the same VM state as part of an aggregate status view.

Options

Use --api-url to target another AI Platform deployment. Use --token-file, BUS_AI_TOKEN, BUS_API_TOKEN, or the default bus auth session for bearer tokens. Literal token values are not accepted on the command line. Use --format json, --format text, or --format tsv to select output.

--help and --version print command help or version information. --chdir <dir>, --output <file>, --quiet, --color <auto|always|never>, --no-color, and --timeout <duration> provide common Bus CLI working-directory, output, color, and HTTP timeout controls.

Examples

bus vm status --format text
bus vm --api-url https://ai.hg.fi --token-file /run/secrets/bus-api-token status

A successful status call exits 0 and prints the current runtime state in the selected format. Text output includes whether the runtime is ready, starting, stopped, or unavailable according to the provider response.

Local Compose

The BusDK superproject compose.yaml exposes the local VM status API through nginx at http://127.0.0.1:${LOCAL_AI_PLATFORM_PORT:-8080}/api/v1/vm/status. The stack uses the static VM provider, so this local command should report provider static without starting a real runtime:

cd /path/to/busdk
docker compose up --build -d
export BUS_API_TOKEN="$(docker compose exec -T testing-agent cat /root/.config/bus/auth/api-token)"
bus vm --api-url "http://127.0.0.1:${LOCAL_AI_PLATFORM_PORT:-8080}" status

Using from .bus files

Inside a .bus file, write the module target without the bus prefix:

# same as: bus vm status --format json
vm status --format json