Overview
Home
rsspot is a Python SDK and CLI for Rackspace Spot with unified sync/async client ergonomics, sqlite-backed runtime state, and profile-aware config resolution.
Capability Matrix
| Capability | What you get | Primary entrypoint |
|---|---|---|
| Profile management | Multi-profile config with legacy-file migration | rsspot configure, rsspot profiles * |
| CLI automation | Command-driven operations with json/yaml/table output | rsspot <group> <command> |
| Unified SDK automation | One client supporting sync and async usage | SpotClient |
| Async-only SDK usage | Explicit async surface for service/worker code | AsyncSpotClient |
| Persistent runtime state | Preferences, HTTP cache, command history, registration ledger | StateStore |
| VM registration orchestration | Idempotent registration status tracking primitives | RegistrationWorkflow |
| Schema drift tracking | OpenAPI snapshot + generated operation index | scripts/sync_openapi.py, scripts/generate_openapi_index.py |
Quickstart
uv sync
uv run rsspot configure \
--profile default \
--org <org-name> \
--region us-central-dfw-1 \
--refresh-token "$SPOT_REFRESH_TOKEN"
uv run rsspot organizations list --output table
Choose Your Path
- New user setup: Getting Started
- Config precedence, migration, and envs: Configuration
- Sync/async SDK integration patterns: SDK Usage
- CLI command workflows: CLI Reference
- Runtime internals and extension points: Architecture
- Upstream API drift maintenance: OpenAPI Lifecycle
- Debugging and recovery: Troubleshooting
- Contribution flow and standards: Contributing