Skip to content

Commit 2729751

Browse files
committed
ci: Add cargo-deny job to workflow
1 parent 3d6b482 commit 2729751

File tree

2 files changed

+85
-0
lines changed

2 files changed

+85
-0
lines changed

.github/workflows/boil_build_release.yaml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,34 @@ env:
1616
RUST_VERSION: 1.87.0
1717

1818
jobs:
19+
# This job is always run to ensure we don't miss any new upstream advisories
20+
cargo-deny:
21+
name: Run cargo-deny
22+
runs-on: ubuntu-latest
23+
# Prevent sudden announcement of a new advisory from failing CI
24+
continue-on-error: ${{ matrix.checks == 'advisories' }}
25+
strategy:
26+
matrix:
27+
checks:
28+
- advisories
29+
- bans licenses sources
30+
steps:
31+
- name: Checkout Repository
32+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
33+
with:
34+
persist-credentials: false
35+
submodules: recursive
36+
37+
- name: Run cargo-deny
38+
uses: EmbarkStudios/cargo-deny-action@f2ba7abc2abebaf185c833c3961145a3c275caad # v2.0.13
39+
with:
40+
command: check ${{ matrix.checks }}
41+
1942
create-release:
2043
name: Create Draft Release
2144
if: github.event_name == 'push'
45+
needs:
46+
- cargo-deny
2247
runs-on: ubuntu-latest
2348
steps:
2449
- name: Create Draft Release
@@ -27,6 +52,9 @@ jobs:
2752
draft: true
2853

2954
build:
55+
name: Build boil
56+
needs:
57+
- create-release
3058
strategy:
3159
fail-fast: false
3260
matrix:

deny.toml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# This file is the source of truth for all our repos!
2+
# This includes repos not templated by operator-templating, please copy/paste the file for this repos.
3+
4+
# TIP: Use "cargo deny check" to check if everything is fine
5+
6+
[graph]
7+
targets = [
8+
{ triple = "x86_64-unknown-linux-gnu" },
9+
{ triple = "aarch64-unknown-linux-gnu" },
10+
{ triple = "x86_64-unknown-linux-musl" },
11+
{ triple = "aarch64-apple-darwin" },
12+
{ triple = "x86_64-apple-darwin" },
13+
]
14+
15+
[advisories]
16+
yanked = "deny"
17+
18+
[bans]
19+
multiple-versions = "allow"
20+
21+
[licenses]
22+
unused-allowed-license = "allow"
23+
confidence-threshold = 1.0
24+
allow = [
25+
"Apache-2.0",
26+
"BSD-2-Clause",
27+
"BSD-3-Clause",
28+
"CC0-1.0",
29+
"ISC",
30+
"LicenseRef-ring",
31+
"LicenseRef-webpki",
32+
"MIT",
33+
"MPL-2.0",
34+
"OpenSSL", # Needed for the ring and/or aws-lc-sys crate. See https://github.com/stackabletech/operator-templating/pull/464 for details
35+
"Unicode-3.0",
36+
"Unicode-DFS-2016",
37+
"Zlib",
38+
"Unlicense",
39+
]
40+
private = { ignore = true }
41+
42+
[[licenses.clarify]]
43+
name = "ring"
44+
expression = "LicenseRef-ring"
45+
license-files = [{ path = "LICENSE", hash = 0xbd0eed23 }]
46+
47+
[[licenses.clarify]]
48+
name = "webpki"
49+
expression = "LicenseRef-webpki"
50+
license-files = [{ path = "LICENSE", hash = 0x001c7e6c }]
51+
52+
[sources]
53+
unknown-registry = "deny"
54+
unknown-git = "deny"
55+
56+
[sources.allow-org]
57+
github = ["stackabletech"]

0 commit comments

Comments
 (0)