fix(ci): remove invalid cargo-deny unmaintained value #53
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: Open Source CI | |
| on: | |
| push: | |
| branches: [ "main" ] | |
| paths-ignore: | |
| - "docs-book/**" | |
| - "plan/**" | |
| - "examples/**" | |
| - "docs/contracts/**" | |
| pull_request: | |
| branches: [ "main" ] | |
| paths-ignore: | |
| - "docs-book/**" | |
| - "plan/**" | |
| - "examples/**" | |
| - "docs/contracts/**" | |
| permissions: | |
| contents: read | |
| env: | |
| CARGO_TERM_COLOR: always | |
| concurrency: | |
| group: ci-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build-and-test: | |
| name: Build & Test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Rust | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy, rustfmt | |
| - name: Cache Cargo Dependencies | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| target | |
| key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo- | |
| - name: Check Formatting | |
| run: cargo fmt --check | |
| - name: Clippy (Linting) | |
| run: cargo clippy --all-targets -- -D warnings | |
| - name: Build | |
| run: cargo build --verbose | |
| - name: Smoke check (Unix) | |
| if: runner.os != 'Windows' | |
| run: | | |
| target/debug/declarch --help | |
| target/debug/declarch info --doctor | |
| - name: Smoke check (Windows) | |
| if: runner.os == 'Windows' | |
| run: | | |
| .\target\debug\declarch.exe --help | |
| .\target\debug\declarch.exe info --doctor | |
| - name: Run Tests | |
| run: cargo test --all-targets --verbose | |
| - name: Benchmark Profile (lightweight) | |
| run: | | |
| FORMAT=both \ | |
| ITERATIONS=3 \ | |
| WARMUP=1 \ | |
| OUT=plan/test/benchmark-profile.md \ | |
| OUT_JSON=plan/test/benchmark-profile.json \ | |
| scripts/benchmark_profile.sh | |
| - name: Upload benchmark artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: benchmark-profile | |
| path: | | |
| plan/test/benchmark-profile.md | |
| plan/test/benchmark-profile.json | |
| cross-platform-build: | |
| name: Build (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [macos-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Rust | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Build | |
| run: cargo build --verbose | |
| security-audit: | |
| name: Security Audit | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| security-events: write | |
| issues: write | |
| checks: write | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Run cargo-audit | |
| uses: rustsec/audit-check@v1.4.1 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| cargo-deny: | |
| name: Cargo Deny | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| checks: | |
| - advisories | |
| - bans licenses sources | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: EmbarkStudios/cargo-deny-action@v2 | |
| with: | |
| command: check ${{ matrix.checks }} |