Skip to content

🔧 Route compute CI to local self-hosted runner. (#89) #325

🔧 Route compute CI to local self-hosted runner. (#89)

🔧 Route compute CI to local self-hosted runner. (#89) #325

Workflow file for this run

name: Checks

Check failure on line 1 in .github/workflows/checks.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/checks.yml

Invalid workflow file

(Line: 17, Col: 9): Unrecognized named-value: 'matrix'. Located at position 45 within expression: github.event_name == 'workflow_dispatch' || matrix.os == 'ubuntu-latest'
on:
workflow_dispatch:
push:
branches: [master, dev]
pull_request:
workflow_call: {}
env:
CARGO_TERM_COLOR: always
jobs:
check:
name: fmt + check + clippy + test (${{ matrix.os }})
runs-on: ${{ matrix.os == 'ubuntu-latest' && 'self-hosted' || matrix.os }}
if: github.event_name == 'workflow_dispatch' || matrix.os == 'ubuntu-latest'
permissions:
contents: read
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
rust: [stable]
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ matrix.rust }}
components: rustfmt, clippy
- name: Cache cargo
uses: actions/cache@v4
continue-on-error: true
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target
key: ${{ matrix.os }}-${{ matrix.rust }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ matrix.os }}-${{ matrix.rust }}-cargo-
${{ matrix.os }}-cargo-
- name: Check formatting
run: cargo fmt --all -- --check
- name: Check compilation
run: cargo check --workspace --all-targets --all-features
- name: Clippy lints
run: cargo clippy --workspace --all-targets --all-features -- -D warnings
- name: Run Rust tests
run: cargo test --workspace --all-features
integration:
name: python integration tests (CLI + test-app)
runs-on: [self-hosted, linux, x64, local]
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
- name: Cache cargo
uses: actions/cache@v4
continue-on-error: true
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target
key: ubuntu-integration-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
ubuntu-integration-cargo-
ubuntu-latest-stable-cargo-
- name: Build CLI + test-app
run: cargo build --features cli,worker && cargo build --example test_app --features tcp,worker,signals
- name: Run the Python scripts/ suite
run: python3 scripts/tests/run_all.py