MLOps-inspired CI/CD for OpenClaw agent fleets. Prescriptive, versioned system images provide a managed runtime. Portable data disks carry agent identity, workspace, and state across VM replacements and image upgrades. Deploy a fully equipped, desktop-running claw on Azure in one command. Upgrade it without losing state in another.
github.com/logan-robbins/openclawpsStock Ubuntu 24.04, cloud-init full install — xfce4 desktop, Chrome, OpenClaw, Claude Code (~10 min)
Generalize VM into immutable versioned image, push to Azure Compute Gallery
Golden image + fresh data disk — fleet-friendly, same image different .env (~2 min)
Swap VM to new image version, same data disk — identity, workspace, memory, credentials preserved
| Inbound :22 | SSH (password auth) |
| Inbound :5900 | VNC (x11vnc, shared + viewonly) |
| Loopback :18789 | OpenClaw Gateway (not externally exposed) |
| api.x.ai | Outbound — LLM inference (xAI / Grok-4) |
| api.telegram.org | Outbound — Bot API polling |
| *.google.com | Outbound — Chrome / CDP browsing |
| NSG | AllowAll (wide open) — ufw disabled |
| sudo | NOPASSWD ALL — full autonomy |
| Exec sandbox | off — containment at infra boundary, not inside guest |
| Compute Gallery | clawGallery/claw-base/x.y.z |
| OpenClawps Concept | MLOps Equivalent | Notes |
|---|---|---|
| deploy.sh scratch | Train from scratch | Full environment built from stock Ubuntu |
| deploy.sh bake | Registry push | Generalized VM captured to Compute Gallery |
| Azure Compute Gallery | Model / artifact registry | Versioned golden images (claw-base/x.y.z) |
| deploy.sh (default) | Inference deployment | Spin up instance from image + data disk |
| deploy.sh upgrade | Rolling update | New image, same persistent state |
| Data Disk | Feature store / state | Agent identity, workspace, config survive upgrades |
| boot.sh | Inference server init | Mount, seed, wire, start — every boot |
| run-updates.sh | Drift remediation | Versioned migration scripts applied in order |
| verify.sh | Model validation | 33-point post-deploy health checks across all subsystems |
| SOUL.md | Model card | Agent personality / identity definition |
| .env | Secrets management | Never committed, injected at deploy via envsubst |