Add Daytona sandbox defaults to fabro.toml and smoke workflow

Set Daytona as the project-level default sandbox so workflows that don't
specify their own sandbox config run on Daytona automatically. Add a
smoke workflow that verifies the sandbox toolchain (git, rustc, bun).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Bryan Helmkamp 2026-03-14 14:53:53 -04:00
parent 5fe1925944
commit bc0bbc273c
3 changed files with 44 additions and 0 deletions

View file

@ -3,3 +3,35 @@ version = 1
[fabro]
root = "fabro/"
retro = false
[sandbox]
provider = "daytona"
[sandbox.daytona]
auto_stop_interval = 30
[sandbox.daytona.labels]
repo = "fabro-sh/fabro"
[sandbox.daytona.snapshot]
name = "fabro-v2"
cpu = 4
memory = 8
disk = 20
dockerfile = """
FROM ubuntu:24.04
RUN apt-get update && apt-get install -y --no-install-recommends \
curl git ca-certificates build-essential pkg-config libssl-dev unzip \
&& rm -rf /var/lib/apt/lists/*
# Rust
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
ENV PATH="/root/.cargo/bin:${PATH}"
# Bun
RUN curl -fsSL https://bun.sh/install | bash
ENV PATH="/root/.bun/bin:${PATH}"
WORKDIR /root
"""

View file

@ -0,0 +1,11 @@
digraph Smoke {
graph [goal="Verify the sandbox is working"]
rankdir=LR
start [shape=Mdiamond, label="Start"]
exit [shape=Msquare, label="Exit"]
main [label="Smoke Test", prompt="Run these commands and report the results:\n1. echo 'Hello from Daytona'\n2. uname -a\n3. which git && git --version\n4. which rustc && rustc --version || echo 'no rustc'\n5. which bun && bun --version || echo 'no bun'\n\nReport what you found."]
start -> main -> exit
}

View file

@ -0,0 +1 @@
version = 1