Skip to content

Commit

Permalink
Add cargo verification pipeline
Browse files Browse the repository at this point in the history
This CI pipeline runs some trivial jobs on every commit to check:
* unit-tests are passing
* linter did not find any improvements
* "default" cargo-deny pass on licenses, source code
  • Loading branch information
svenrademakers committed Oct 12, 2023
1 parent d8e8c29 commit c3a293e
Show file tree
Hide file tree
Showing 2 changed files with 61 additions and 0 deletions.
35 changes: 35 additions & 0 deletions .github/workflows/cargo_ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: 'Cargo CI'
on: push

jobs:
cargo-clippy:
runs-on: ubuntu-latest
steps:
- run: |
sudo apt-get update &&\
sudo apt-get install libusb-1.0-0-dev -y
- uses: actions/checkout@v3
- run: rustup component add clippy
- uses: actions-rs/clippy-check@v1
with:
token: '${{ secrets.GITHUB_TOKEN }}'
args: '--all-features -- -D warnings'
cargo-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
default: true
profile: minimal
- uses: actions-rs/cargo@v1
with:
command: test
cargo-deny:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: EmbarkStudios/cargo-deny-action@v1
with:
command: check bans licenses sources
26 changes: 26 additions & 0 deletions deny.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
[licenses]
unlicensed = "deny"
allow = [
"MIT",
"Apache-2.0",
"Apache-2.0 WITH LLVM-exception",
"BSD-3-Clause",
"Unicode-DFS-2016",
"Zlib",
]
deny = [
"Nokia",
]
copyleft = "deny"
allow-osi-fsf-free = "neither"
default = "deny"
confidence-threshold = 0.8

[[licenses.clarify]]
name = "ring"
version = "*"
expression = "MIT AND ISC AND OpenSSL"
license-files = [
{ path = "LICENSE", hash = 0xbd0eed23 }
]

0 comments on commit c3a293e

Please sign in to comment.