Repository navigation
docs: comprehensive README and documentation overhaul for onboarding and clarity (#170) #306
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| paths-ignore: | |
| - 'crates/yip-bench/RESULTS.md' | |
| - 'crates/yip-bench/wan/results/**' | |
| - 'assets/**' | |
| - '**.md' | |
| - 'docs/**' | |
| pull_request: | |
| paths-ignore: | |
| - 'crates/yip-bench/RESULTS.md' | |
| - 'crates/yip-bench/wan/results/**' | |
| - 'assets/**' | |
| - '**.md' | |
| - 'docs/**' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| env: | |
| CARGO_TERM_COLOR: always | |
| RUSTFLAGS: "-D warnings" | |
| jobs: | |
| build-test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy, rustfmt | |
| - name: Install build prerequisites (BoringSSL needs cmake + libclang) | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y --no-install-recommends cmake clang libclang-dev pkg-config | |
| - name: Format check | |
| run: cargo fmt --all -- --check | |
| - name: Verify benchmark graphs and wire-format diagram are up-to-date | |
| run: | | |
| python3 crates/yip-bench/generate-graphs.py --check | |
| python3 crates/yip-bench/generate-wire-format.py --check | |
| - name: Clippy | |
| run: cargo clippy --workspace --all-targets -- -D warnings | |
| - name: Build | |
| run: cargo build --workspace | |
| - name: Test | |
| # This job runs as root in a container without netns/`ip` tooling, so the | |
| # root-gated netns/netem integration tests must skip here (they have | |
| # dedicated privileged jobs in integration.yml). YIP_SKIP_PRIVILEGED_TESTS | |
| # forces them to skip; it is unset in the privileged jobs and locally. | |
| env: | |
| YIP_SKIP_PRIVILEGED_TESTS: "1" | |
| run: cargo test --workspace | |
| shear: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| # taiki-e/install-action is not mirrored on this Forgejo instance; install | |
| # the tool directly instead of via the composite action. | |
| - name: Install cargo-shear | |
| run: cargo install cargo-shear --locked | |
| - name: Unused dependencies | |
| run: cargo shear | |
| deny: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| # EmbarkStudios/cargo-deny-action is not mirrored on this Forgejo instance; | |
| # install and run cargo-deny directly (same default `cargo deny check`). | |
| - name: Install cargo-deny | |
| run: cargo install cargo-deny --locked | |
| - name: License + advisory check | |
| run: cargo deny check |