Skip to content

fix: remove duplicate chaos test, build binary upfront #79

fix: remove duplicate chaos test, build binary upfront

fix: remove duplicate chaos test, build binary upfront #79

Workflow file for this run

# UFFS Tier 1 Nightly CI
# Copyright 2025-2026 Robert Nio
# SPDX-License-Identifier: MIT OR Apache-2.0
name: 🧪 UFFS Tier 1 Nightly CI
on:
push:
branches: [ main, develop ]
paths:
- '**/*.rs'
- 'Cargo.toml'
- 'Cargo.lock'
- '**/Cargo.toml'
- '**/Cargo.lock'
- '.github/workflows/ci.yml'
- '.github/workflows/optimized-ci.yml'
- 'scripts/ci/check_file_size_policy.sh'
- 'scripts/ci/file_size_exceptions.txt'
- 'scripts/ci/ci-pipeline.rs'
pull_request:
branches: [ main ]
paths:
- '**/*.rs'
- 'Cargo.toml'
- 'Cargo.lock'
- '**/Cargo.toml'
- '**/Cargo.lock'
- '.github/workflows/ci.yml'
- '.github/workflows/optimized-ci.yml'
- 'scripts/ci/check_file_size_policy.sh'
- 'scripts/ci/file_size_exceptions.txt'
- 'scripts/ci/ci-pipeline.rs'
workflow_dispatch:
permissions:
contents: read
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
CARGO_TARGET_DIR: target
RUSTC_WRAPPER: ""
CARGO_BUILD_JOBS: 2
jobs:
format-check:
name: Tier 1 / Format
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install nightly Rust toolchain
uses: dtolnay/rust-toolchain@nightly
with:
components: rustfmt
- name: Check formatting
run: cargo fmt --all -- --check
clippy:
name: Tier 1 / Clippy
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install nightly Rust toolchain
uses: dtolnay/rust-toolchain@nightly
with:
components: clippy
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
- name: Run nightly clippy gate
run: cargo clippy --workspace --all-targets --all-features --no-deps -- -D warnings
rustdoc:
name: Tier 1 / Rustdoc
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install nightly Rust toolchain
uses: dtolnay/rust-toolchain@nightly
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
- name: Run rustdoc warnings gate
run: RUSTDOCFLAGS="-Dwarnings" cargo doc --workspace --all-features --no-deps
tests:
name: Tier 1 / Tests
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install nightly Rust toolchain
uses: dtolnay/rust-toolchain@nightly
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
- name: Install nextest
uses: taiki-e/install-action@nextest
- name: Run tests
run: cargo nextest run --workspace --all-features --lib --bins --tests
- name: Run doc tests
run: RUSTDOCFLAGS="-Dwarnings" cargo test --doc --workspace --all-features
security:
name: Tier 1 / Security
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install nightly Rust toolchain
uses: dtolnay/rust-toolchain@nightly
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
- name: Install cargo-audit
uses: taiki-e/install-action@cargo-audit
- name: Run security audit
run: cargo audit
- name: Install cargo-deny
uses: taiki-e/install-action@cargo-deny
- name: Run dependency check
run: cargo deny check
file-size-policy:
name: Tier 1 / File Size Policy
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Enforce file size policy
run: bash scripts/ci/check_file_size_policy.sh