-
Notifications
You must be signed in to change notification settings - Fork 9
144 lines (135 loc) · 3.84 KB
/
rust.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
name: Rust
on: [push, pull_request]
env:
CARGO_TERM_COLOR: always
jobs:
default_features:
name: Default features
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install protoc
run: |
sudo apt-get update
sudo apt-get install protobuf-compiler
- name: Format
run: cargo fmt --all -- --check
- name: Clippy
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Doc
run: RUSTDOCFLAGS="-D warnings" cargo doc
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose
no_features:
name: No features
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install protoc
run: |
sudo apt-get update
sudo apt-get install protobuf-compiler
- name: Format
run: cargo fmt --all -- --check
- name: Clippy
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Doc
run: RUSTDOCFLAGS="-D warnings" cargo doc --no-default-features
- name: Build
run: cargo build --no-default-features --verbose
- name: Run tests
run: cargo test --no-default-features --verbose
galmon_features:
name: Galmon features
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install protoc
run: |
sudo apt-get update
sudo apt-get install protobuf-compiler
- name: Format
run: cargo fmt --all -- --check
- name: Clippy
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Doc
run: RUSTDOCFLAGS="-D warnings" cargo doc --features galmon
- name: Build
run: cargo build --verbose --features galmon
- name: Run tests
run: cargo test --verbose --features galmon
msrv:
name: MSRV
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install protoc
run: |
sudo apt-get update
sudo apt-get install protobuf-compiler
- name: Install toolchain
run: rustup install 1.70.0
- name: Doc
run: RUSTDOCFLAGS="-D warnings" cargo +1.70.0 doc --features galmon
- name: Build
run: cargo +1.70.0 build --verbose --features galmon
- name: Run tests
run: cargo +1.70.0 test --verbose --features galmon
galmon:
name: Galmon
runs-on: ubuntu-latest
defaults:
run:
working-directory: galmon-osnma
steps:
- uses: actions/checkout@v4
- name: Install protoc
run: |
sudo apt-get update
sudo apt-get install protobuf-compiler
- name: Format
run: cargo fmt --all -- --check
- name: Clippy
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose
longan_nano:
name: Longan nano
runs-on: ubuntu-latest
defaults:
run:
working-directory: osnma-longan-nano
steps:
- uses: actions/checkout@v4
- name: Install riscv32imac Rust target
run: rustup target add riscv32imac-unknown-none-elf
- name: Format
run: cargo fmt --all -- --check
- name: Clippy
run: cargo clippy --all-features -- -D warnings
- name: Build
run: cargo build --release --verbose
longan_nano_client:
name: Longan nano client
runs-on: ubuntu-latest
defaults:
run:
working-directory: osnma-longan-nano-client
steps:
- uses: actions/checkout@v4
- name: Install libudev and protoc
run: |
sudo apt-get update
sudo apt-get install libudev-dev protobuf-compiler
- name: Format
run: cargo fmt --all -- --check
- name: Clippy
run: cargo clippy --all-targets --all-features -- -D warnings
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose