feat: split vil_cli into 5 sub-crates + thin dispatcher #87
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: Continuous Integration | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| permissions: | |
| contents: read | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| check: | |
| name: Check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - run: sudo apt-get update && sudo apt-get install -y libcurl4-openssl-dev cmake protobuf-compiler | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo check --workspace --exclude vil-basic-ai-gw-demo --exclude vil-multi-pipeline-benchmark --exclude vil-basic-blocking-task | |
| test: | |
| name: Test | |
| runs-on: ubuntu-latest | |
| needs: check | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - run: sudo apt-get update && sudo apt-get install -y libcurl4-openssl-dev cmake protobuf-compiler | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo test --workspace --exclude vil-basic-ai-gw-demo --exclude vil-multi-pipeline-benchmark --exclude vil-basic-blocking-task --exclude vil_server_macros -- --skip integration | |
| clippy: | |
| name: Clippy | |
| runs-on: ubuntu-latest | |
| needs: check | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - run: sudo apt-get update && sudo apt-get install -y libcurl4-openssl-dev cmake protobuf-compiler | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo clippy --workspace --exclude vil-basic-ai-gw-demo --exclude vil-multi-pipeline-benchmark --exclude vil-basic-blocking-task | |
| fmt: | |
| name: Format | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - run: cargo fmt --all -- --check | |
| audit: | |
| name: Security Audit | |
| runs-on: ubuntu-latest | |
| continue-on-error: true | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - run: cargo install cargo-audit --locked | |
| - run: >- | |
| cargo audit | |
| --ignore RUSTSEC-2025-0009 | |
| --ignore RUSTSEC-2025-0073 | |
| --ignore RUSTSEC-2024-0421 | |
| --ignore RUSTSEC-2023-0071 | |
| --ignore RUSTSEC-2025-0137 | |
| --ignore RUSTSEC-2026-0049 | |
| --ignore RUSTSEC-2026-0009 | |
| osv-scanner: | |
| name: OSV Scanner | |
| runs-on: ubuntu-latest | |
| continue-on-error: true | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - run: | | |
| curl -sSfL https://github.com/google/osv-scanner/releases/latest/download/osv-scanner_linux_amd64 -o /usr/local/bin/osv-scanner | |
| chmod +x /usr/local/bin/osv-scanner | |
| osv-scanner --lockfile Cargo.lock || true | |
| deny: | |
| name: Cargo Deny | |
| runs-on: ubuntu-latest | |
| continue-on-error: true | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: EmbarkStudios/cargo-deny-action@v2 |