Skip to content

Shuvo.yml

Shuvo.yml #1

Workflow file for this run

name: PR Fast Check
on:
pull_request:
branches:
- main
paths-ignore:
- "docs/**"
- "**/*.md"
permissions:
contents: read
concurrency:
group: pr-fast-${{ github.event.pull_request.number }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
jobs:
check-linux:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Validate readme casing
run: scripts/ci/check-readme-case.sh
- name: Cache vendored deps
uses: actions/cache@v4
with:
path: |
.vendor/flow-vendor
lib/vendor
lib/vendor-manifest
key: ${{ runner.os }}-${{ runner.arch }}-vendor-${{ hashFiles('vendor.lock.toml') }}
- name: Verify pinned vendor commit is published
run: scripts/vendor/vendor-repo.sh verify-pinned-origin
- name: Hydrate vendored deps
run: scripts/vendor/vendor-repo.sh hydrate
- name: Smoke vendor trims
run: scripts/vendor/apply-trims.sh
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- name: Cache Rust build
uses: Swatinem/rust-cache@v2
with:
workspaces: ". -> target"
cache-on-failure: true
- name: Check flowd
run: cargo check -p flowd
- name: Check flowd SIMD feature lane
run: cargo check -p flowd --features linux-host-simd-json
- name: Check seq bridge
run: cargo check -p seq_everruns_bridge
- name: Compile seq bridge tests
run: cargo test -p seq_everruns_bridge --no-run
- name: Build release CLI
env:
CARGO_INCREMENTAL: 0
run: cargo build --release --bin f
- name: Benchmark release CLI startup
run: python3 scripts/bench-cli-startup.py --iterations 5 --warmup 1 --flow-bin ./target/release/f --json-out out/bench/cli-startup.json
- name: Enforce startup latency thresholds
run: python3 scripts/check_cli_startup_thresholds.py out/bench/cli-startup.json