Files
sand-boxer/extensions/README.md
tegwick 8e0465865a Finish SAND-WP-0002: remote smoke, podman-compose, HTTP stub
- T10 smoke passed on CoulombCore (sand-boxer self-deploy, sandbox 4e542c51)
- Add e2e smoke compose, scripts/smoke-compose-e2e.sh, make smoke-remote
- Support SANDBOXER_COMPOSE_CMD for podman-compose hosts
- FastAPI v0 stub at sandboxer.api.app; migration gaps doc
- Mark workplan finished (all 10 tasks done)
2026-06-23 16:52:29 +02:00

32 lines
1.2 KiB
Markdown

# Extensions
Backend adapters for sandbox establishment. Each extension is declared in
`ext.<name>.yaml` and implements `provision`, `wait_ready`, and `teardown`.
## ext.compose-ssh
Self-hosted extension migrated from `the-custodian/e2e-framework/`.
**Provision:** SSH to configured host → isolated directory per sandbox id → rsync
repo → `docker compose up` with unique project name.
**wait_ready:** Confirms compose services are running (`docker compose ps`). Does
not run HTTP health checks — wise-validator owns that.
**teardown:** compose down + remove remote directory (idempotent).
**Compose runtime:** defaults to `docker compose`. On CoulombCore set
`SANDBOXER_COMPOSE_CMD=podman-compose`.
### Compatibility note for `make e2e` callers
Legacy `make e2e REPO=<repo>` runs provision + health + tests + teardown in one
step. sand-boxer splits responsibilities:
| Step | Owner |
|------|-------|
| rsync + compose up/down | sand-boxer (`ext.compose-ssh`) |
| health checks + test_command | wise-validator (SAND-WP-0003) |
Interim workflow: `sandboxer create --profile profile.compose-e2e --input repo=...`
then run validation separately until wise-validator migration lands.