refactor(capi): Move CAPI generation to its own crate #789
Workflow file for this run
This file contains 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: Rust | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main, v5] | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Cache | |
uses: actions/cache@v2 | |
with: | |
path: | | |
~/.cargo | |
target/ | |
key: ${{ runner.os }}-${{ hashFiles('Cargo.toml') }} | |
restore-keys: | | |
${{ runner.os }}-${{ hashFiles('Cargo.toml') }} | |
${{ runner.os }}- | |
- name: Build | |
run: cargo build --verbose | |
- name: Run tests | |
run: cargo test --features="serde-error,bwk" --verbose | |
- name: Check samples | |
run: | | |
cd biscuit-auth | |
cargo run --release --example testcases --features serde-error -- ./samples --json > ./samples/samples.json | |
git diff --exit-code | |
capi: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
- name: Install cargo-c | |
run: cargo install cargo-c --version 0.10.5+cargo-0.83.0 | |
- name: Run cargo-c tests | |
run: cargo ctest --features="capi" --release | |
coverage: | |
name: Coverage | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
- name: Install rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
profile: minimal | |
override: true | |
- name: Cache | |
uses: Swatinem/rust-cache@v1 | |
- name: Install cargo-tarpaulin | |
uses: actions-rs/cargo@v1 | |
with: | |
command: install | |
args: cargo-tarpaulin | |
- name: Run cargo tarpaulin | |
uses: actions-rs/cargo@v1 | |
with: | |
command: tarpaulin | |
args: --output-dir coverage --out xml --workspace --features serde-error --tests --example testcases --example third_party | |
- name: Upload coverage reports to Codecov | |
uses: codecov/[email protected] | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
slug: biscuit-auth/biscuit-rust |