mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-08-28 05:27:41 +00:00
Stage 4 consumer migration: rewrite test fixtures across fabro-cli
integration tests and the repo's own fabro.toml + workflow.toml files
to use the v2 namespaced schema.
Fixtures migrated:
- repo fabro.toml: [fabro] root → [project] directory, [pull_request]
→ [run.pull_request], [sandbox] → [run.sandbox], daytona labels
and snapshot moved under [run.sandbox.daytona], [[hooks]] →
[[run.hooks]] with id, integer memory/disk → '8GB'/'20GB' Size
values
- fabro/workflows/{implement-issue,implement-plan,gh-triage,smoke}/
workflow.toml: version → _version, [github] →
[server.integrations.github]
- fabro-cli integration tests: config.rs (settings/external fixtures),
repo.rs, repo_init.rs, runner.rs, run.rs, store_dump.rs,
workflow.rs, workflow_create.rs, support.rs
- fabro-server run_manifest.rs: prepare_manifest test constructs v2
manifest configs (run.prepare.steps + server.integrations.github)
and updated assertion to reflect v2 whole-list replacement of
run.prepare.steps across layers
Validate command tests all green; ~10 tests remain that need targeted
fixes for specific behaviors that shifted between schemas.
58 lines
1.5 KiB
TOML
58 lines
1.5 KiB
TOML
_version = 1
|
|
|
|
[project]
|
|
directory = "fabro/"
|
|
|
|
[run.pull_request]
|
|
enabled = true
|
|
draft = false
|
|
|
|
[run.sandbox]
|
|
provider = "daytona"
|
|
|
|
[run.sandbox.daytona]
|
|
auto_stop_interval = 30
|
|
|
|
[run.sandbox.daytona.labels]
|
|
repo = "fabro-sh/fabro"
|
|
|
|
[run.sandbox.daytona.snapshot]
|
|
name = "fabro-v6"
|
|
cpu = 4
|
|
memory = "8GB"
|
|
disk = "20GB"
|
|
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 python3 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# GitHub CLI
|
|
RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg \
|
|
| dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg \
|
|
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" \
|
|
| tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
|
|
&& apt-get update && apt-get install -y --no-install-recommends gh \
|
|
&& 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}"
|
|
RUN cargo install cargo-nextest --locked
|
|
ENV CARGO_INCREMENTAL=0
|
|
|
|
# Bun
|
|
RUN curl -fsSL https://bun.sh/install | bash
|
|
ENV PATH="/root/.bun/bin:${PATH}"
|
|
|
|
WORKDIR /root
|
|
"""
|
|
|
|
[[run.hooks]]
|
|
id = "cargo-fmt"
|
|
name = "cargo-fmt"
|
|
event = "post_tool_use"
|
|
matcher = "write_file|edit_file|apply_patch"
|
|
script = "cargo fmt"
|
|
blocking = true
|