Skip to content

feat: Solana + MCP server #1

feat: Solana + MCP server

feat: Solana + MCP server #1

Workflow file for this run

name: test
on:
push:
branches: [main]
pull_request:
branches: [main]
paths:
- 'crates/**'
- 'tests/**'
- 'Cargo.toml'
- 'Cargo.lock'
- '.github/workflows/**'
- 'crates/ilold-web/frontend/**'
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
jobs:
cargo-tests:
name: cargo test --workspace --release
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v4
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
- name: Cache cargo + target
uses: Swatinem/rust-cache@v2
with:
shared-key: cargo-tests
- name: Build workspace (release)
run: cargo build --workspace --release
- name: Run unit + integration tests
run: cargo test --workspace --release
scenario-suite:
name: tests/scenarios/run.sh
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
- name: Cache cargo + target
uses: Swatinem/rust-cache@v2
with:
shared-key: scenario-suite
- name: Build ilold CLI binary
run: cargo build --release --bin ilold -p ilold-cli
- name: Install python websockets (optional)
run: |
python3 -m pip install --user websockets || \
echo "websockets unavailable — runner will skip ws-broadcast.py"
- name: Run scenario suite
run: bash tests/scenarios/run.sh
frontend-cross-check:
name: frontend cross-check program-view
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Run program-view cross-check
working-directory: crates/ilold-web/frontend
run: npm run check:program-view