name: Continuous Integration
on:
push:
env:
CARGO_TERM_COLOR: always
jobs:
check:
runs-on: ubuntu-latest
steps:
- name: Checking out sources
uses: actions/checkout@v3
- name: Installing Rust toolchain
run: rustup toolchain install stable
- uses: Swatinem/rust-cache@v2
- name: Clone Kvarn
run: git clone https://github.com/Icelk/kvarn ../kvarn
- name: Checking formatting
run: cargo fmt --check
- name: Checking lints
run: cargo clippy --all-targets -- -D warnings
- name: Checking lints with all features
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Checking lints with only ecdsa
run: cargo clippy --no-default-features --features ecdsa -- -D warnings
- name: Checking lints with only hmac
run: cargo clippy --no-default-features --features hmac -- -D warnings
- name: Checking lints with only RSA
run: cargo clippy --no-default-features --features rsa -- -D warnings
- name: Checking doc references
uses: Icelk/rustdoc-link-check@v2
with:
private: true
- name: Testing project
run: cargo test