Static code analysis #911
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: Static code analysis | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
schedule: | |
- cron: '21 4 * * *' # every day at 4:21 AM UTC | |
jobs: | |
security-audit: | |
name: Security audit | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: rust-toolchain | |
uses: actions-rs/[email protected] | |
with: | |
toolchain: stable | |
- name: Install security audit | |
run: cargo install cargo-audit | |
- name: Run security audit | |
run: cargo audit | |
fmt_check: | |
name: Check code formatting | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: rust-toolchain | |
uses: actions-rs/[email protected] | |
with: | |
toolchain: stable | |
components: rustfmt | |
- name: Check code formatting | |
run: cargo fmt --check --all | |
clippy_check: | |
name: Clippy check | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: rust-toolchain | |
uses: actions-rs/[email protected] | |
with: | |
toolchain: stable | |
components: clippy | |
- name: Clippy | |
run: cargo clippy --all-targets | |
linelint: | |
name: Check that files end with line break | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Linelint | |
uses: fernandrone/linelint@master | |
id: linelint | |
unused_dependencies: | |
name: Look for unused dependencies | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: rust-toolchain | |
uses: actions-rs/[email protected] | |
with: | |
toolchain: nightly-2023-06-15 | |
override: true | |
- name: Install unused dependency checker | |
run: cargo install cargo-udeps --locked | |
- name: Run unused dependency checker | |
run: cargo +nightly-2023-06-15 udeps --all-targets |