@@ -29,23 +29,28 @@ jobs:
29
29
runs-on : ${{ matrix.os }}
30
30
continue-on-error : ${{ matrix.rust == 'beta' }}
31
31
steps :
32
+ - name : Harden the runner (Audit all outbound calls)
33
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
34
+ with :
35
+ egress-policy : audit
36
+
32
37
- name : Free disk space
33
38
if : ${{ matrix.os == 'ubuntu-latest'}}
34
39
run : |
35
40
df -h
36
41
sudo rm -rf /usr/local/lib/android
37
42
sudo rm -rf /usr/share/dotnet
38
43
df -h
39
- - uses : actions/checkout@v4
44
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
40
45
with :
41
46
submodules : true
42
- - uses : dtolnay/rust-toolchain@master
47
+ - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
43
48
with :
44
49
toolchain : ${{ matrix.rust }}
45
50
components : rustfmt
46
51
- name : " Set rustup profile"
47
52
run : rustup set profile minimal
48
- - uses : arduino/setup-protoc@v3
53
+ - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
49
54
with :
50
55
repo-token : ${{ secrets.GITHUB_TOKEN }}
51
56
- name : Test (Windows)
@@ -62,14 +67,19 @@ jobs:
62
67
os : [ubuntu-latest, windows-latest, macos-latest, ubuntu-22.04-arm]
63
68
runs-on : ${{ matrix.os }}
64
69
steps :
65
- - uses : actions/checkout@v4
70
+ - name : Harden the runner (Audit all outbound calls)
71
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
72
+ with :
73
+ egress-policy : audit
74
+
75
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
66
76
with :
67
77
submodules : true
68
- - uses : dtolnay/rust-toolchain@master
78
+ - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
69
79
with :
70
80
toolchain : stable
71
81
components : rustfmt,clippy
72
- - uses : arduino/setup-protoc@v3
82
+ - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
73
83
with :
74
84
repo-token : ${{ secrets.GITHUB_TOKEN }}
75
85
- name : Format
@@ -92,14 +102,19 @@ jobs:
92
102
runs-on : ${{ matrix.os }}
93
103
continue-on-error : true
94
104
steps :
95
- - uses : actions/checkout@v4
105
+ - name : Harden the runner (Audit all outbound calls)
106
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
107
+ with :
108
+ egress-policy : audit
109
+
110
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
96
111
with :
97
112
submodules : true
98
113
- name : Set up Rust ${{ matrix.rust }}
99
- uses : dtolnay/rust-toolchain@master
114
+ uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
100
115
with :
101
116
toolchain : ${{ matrix.rust }}
102
- - uses : taiki-e/install-action@v2
117
+ - uses : taiki-e/install-action@a48a50298f98c47e46a957ae6f82c44cc4878e42 # v2.49.47
103
118
with :
104
119
tool : cargo-msrv
105
120
- name : Patch dependencies versions (Unix)
@@ -115,19 +130,29 @@ jobs:
115
130
runs-on : ubuntu-latest
116
131
continue-on-error : true # Prevent sudden announcement of a new advisory from failing ci
117
132
steps :
118
- - uses : actions/checkout@v4
119
- - uses : EmbarkStudios/cargo-deny-action@v2
133
+ - name : Harden the runner (Audit all outbound calls)
134
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
135
+ with :
136
+ egress-policy : audit
137
+
138
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
139
+ - uses : EmbarkStudios/cargo-deny-action@34899fc7ba81ca6268d5947a7a16b4649013fea1 # v2.0.11
120
140
with :
121
141
command : check advisories
122
142
docs :
123
143
continue-on-error : true
124
144
runs-on : ubuntu-latest
125
145
steps :
126
- - uses : actions/checkout@v4
127
- - uses : dtolnay/rust-toolchain@master
146
+ - name : Harden the runner (Audit all outbound calls)
147
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
148
+ with :
149
+ egress-policy : audit
150
+
151
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
152
+ - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
128
153
with :
129
154
toolchain : stable
130
- - uses : arduino/setup-protoc@v3
155
+ - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
131
156
with :
132
157
repo-token : ${{ secrets.GITHUB_TOKEN }}
133
158
- name : doc
@@ -139,38 +164,48 @@ jobs:
139
164
continue-on-error : true
140
165
runs-on : ubuntu-latest
141
166
steps :
142
- - uses : actions/checkout@v4
167
+ - name : Harden the runner (Audit all outbound calls)
168
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
169
+ with :
170
+ egress-policy : audit
171
+
172
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
143
173
with :
144
174
submodules : true
145
- - uses : dtolnay/rust-toolchain@master
175
+ - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
146
176
with :
147
177
toolchain : stable
148
178
components : llvm-tools-preview
149
- - uses : arduino/setup-protoc@v3
179
+ - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
150
180
with :
151
181
repo-token : ${{ secrets.GITHUB_TOKEN }}
152
182
- name : cargo install cargo-llvm-cov
153
- uses : taiki-e/install-action@cargo-llvm-cov
183
+ uses : taiki-e/install-action@9cfaca2426fcec262716306a13a478bd3b36200f # cargo-llvm-cov
154
184
- name : cargo generate-lockfile
155
185
if : hashFiles('Cargo.lock') == ''
156
186
run : cargo generate-lockfile
157
187
- name : cargo llvm-cov
158
188
run : cargo llvm-cov --locked --all-features --workspace --lcov --output-path lcov.info
159
189
- name : Upload to codecov.io
160
- uses : codecov/codecov-action@v4
190
+ uses : codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4.6.0
161
191
with :
162
192
fail_ci_if_error : true
163
193
cargo-machete :
164
194
continue-on-error : true
165
195
runs-on : ubuntu-latest
166
196
steps :
167
- - uses : actions/checkout@v4
197
+ - name : Harden the runner (Audit all outbound calls)
198
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
199
+ with :
200
+ egress-policy : audit
201
+
202
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
168
203
with :
169
204
submodules : true
170
- - uses : dtolnay/rust-toolchain@master
205
+ - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
171
206
with :
172
207
toolchain : stable
173
- - uses : taiki-e/install-action@v2
208
+ - uses : taiki-e/install-action@a48a50298f98c47e46a957ae6f82c44cc4878e42 # v2.49.47
174
209
with :
175
210
tool : cargo-machete
176
211
- name : cargo machete
@@ -179,13 +214,18 @@ jobs:
179
214
continue-on-error : true
180
215
runs-on : ubuntu-latest
181
216
steps :
182
- - uses : actions/checkout@v4
217
+ - name : Harden the runner (Audit all outbound calls)
218
+ uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
219
+ with :
220
+ egress-policy : audit
221
+
222
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
183
223
with :
184
224
submodules : true
185
- - uses : dtolnay/rust-toolchain@master
225
+ - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
186
226
with :
187
227
toolchain : stable
188
- - uses : taiki-e/install-action@v2
228
+ - uses : taiki-e/install-action@a48a50298f98c47e46a957ae6f82c44cc4878e42 # v2.49.47
189
229
with :
190
230
tool : cargo-workspace-lints
191
231
- name : cargo workspace-lints
0 commit comments