...
1name: rust
2
3on:
4 pull_request:
5 paths:
6 - Cargo.*
7 - '**/*.rs'
8 - '**/*.proto'
9 - justfile
10 - .github/workflows/rust.yml
11
12env:
13 CARGO_INCREMENTAL: 0
14 CARGO_NET_RETRY: 10
15 RUSTFLAGS: "-D warnings -A deprecated"
16 RUSTUP_MAX_RETRIES: 10
17
18permissions:
19 contents: read
20
21jobs:
22 gen-check:
23 timeout-minutes: 10
24 runs-on: ubuntu-latest
25 container: docker://ghcr.io/linkerd/dev:v43-rust
26 steps:
27 - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b
28 - run: just rs-fetch
29 - run: just rs-gen-check
30
31 rust-clippy:
32 timeout-minutes: 10
33 runs-on: ubuntu-latest
34 container: docker://ghcr.io/linkerd/dev:v43-rust
35 steps:
36 - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b
37 - run: just rs-fetch
38 - run: just rs-clippy
39
40 rust-docs:
41 timeout-minutes: 10
42 runs-on: ubuntu-latest
43 container: docker://ghcr.io/linkerd/dev:v43-rust
44 steps:
45 - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b
46 - run: just rs-fetch
47 - run: just rs-docs
48
49 rust-test:
50 timeout-minutes: 10
51 runs-on: ubuntu-latest
52 container: docker://ghcr.io/linkerd/dev:v43-rust
53 steps:
54 - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b
55 - run: just rs-fetch
56 - run: just rs-test-build
57 - run: just rs-test
58
59 rust-deps:
60 timeout-minutes: 5
61 runs-on: ubuntu-latest
62 strategy:
63 matrix:
64 checks:
65 - advisories
66 - bans licenses sources
67 # Prevent sudden announcement of a new advisory from failing Ci.
68 continue-on-error: ${{ matrix.checks == 'advisories' }}
69 steps:
70 - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b
71 - uses: EmbarkStudios/cargo-deny-action@3f4a782664881cf5725d0ffd23969fcce89fd868
72 with:
73 command: check ${{ matrix.checks }}
View as plain text