Skip to content

Commit c44d361

Browse files
authored
CI: Update actions and fix warnings (#2435)
* CI: update to checkout@v4 action Not sure why they decided to bump a major version. It seems like this is unnecessary churn: actions/checkout#1436 (comment) * CI: replace archived `actions-rs/toolchain` It's been unmaintained for four years and has been throwing warnings in CI: > The `set-output` command is deprecated and will be disabled soon. * CI: Bump `cargo-install` action. This should fix the remaining warnings in CI? * CI: mdbook-linkcheck: workaround for build error
1 parent 0dc94a4 commit c44d361

File tree

5 files changed

+55
-84
lines changed

5 files changed

+55
-84
lines changed

.github/workflows/build_and_test.yml

Lines changed: 42 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,24 @@ jobs:
2323
os: [ ubuntu-latest, windows-latest, macOS-latest ]
2424
runs-on: ${{ matrix.os }}
2525
steps:
26-
- uses: actions/checkout@v3
26+
- uses: actions/checkout@v4
2727
- if: runner.os == 'Linux'
2828
uses: ./.github/workflows/ubuntu-prepare
2929
- name: Install mimetype
3030
if: runner.os == 'Linux'
3131
run: sudo apt-get install -y libfile-mimeinfo-perl
3232
- name: install mdbook
33-
uses: baptiste0928/cargo-install@v1.3.0
33+
uses: baptiste0928/cargo-install@v3
3434
with:
3535
crate: mdbook
3636
- name: install linkcheck
37-
uses: baptiste0928/cargo-install@v1.3.0
37+
uses: baptiste0928/cargo-install@v3
3838
with:
3939
crate: mdbook-linkcheck
40+
# NOTE: The current crates.io release of mdbook-linkcheck (v0.7.7) is broken
41+
# => https://github.com/Michael-F-Bryan/mdbook-linkcheck/pull/82#issuecomment-2241058491
42+
git: https://github.com/Michael-F-Bryan/mdbook-linkcheck.git
43+
rev: 8c783c5d754d83bcd50c28fb4174854b04ece990
4044
- uses: Swatinem/rust-cache@v2
4145
with: { shared-key: "ubuntu" }
4246
if: runner.os == 'Linux'
@@ -71,11 +75,8 @@ jobs:
7175
steps:
7276
- name: Remove Dotnet & Haskell
7377
run: rm -rf /usr/share/dotnet && rm -rf /opt/ghc
74-
- uses: actions-rs/toolchain@v1
75-
with:
76-
profile: minimal
77-
toolchain: stable
78-
- uses: actions/checkout@v3
78+
- uses: dtolnay/rust-toolchain@stable
79+
- uses: actions/checkout@v4
7980
- uses: Swatinem/rust-cache@v2
8081
with: { shared-key: "llvm-tester" }
8182
- name: Install LLVM and Clang
@@ -88,7 +89,7 @@ jobs:
8889
ubuntu-doc-build:
8990
runs-on: ubuntu-22.04
9091
steps:
91-
- uses: actions/checkout@v3
92+
- uses: actions/checkout@v4
9293
- uses: ./.github/workflows/ubuntu-prepare
9394
- uses: Swatinem/rust-cache@v2
9495
# ---- doc check ----
@@ -98,7 +99,7 @@ jobs:
9899
ubuntu-doc-test:
99100
runs-on: ubuntu-22.04
100101
steps:
101-
- uses: actions/checkout@v3
102+
- uses: actions/checkout@v4
102103
- uses: ./.github/workflows/ubuntu-prepare
103104
- uses: Swatinem/rust-cache@v2
104105
# ---- doc check ----
@@ -109,7 +110,7 @@ jobs:
109110
runs-on: ubuntu-22.04
110111
needs: ubuntu
111112
steps:
112-
- uses: actions/checkout@v3
113+
- uses: actions/checkout@v4
113114
- uses: ./.github/workflows/ubuntu-prepare
114115
- uses: Swatinem/rust-cache@v2
115116
- name: Add nightly clippy
@@ -121,7 +122,7 @@ jobs:
121122
ubuntu:
122123
runs-on: ubuntu-22.04
123124
steps:
124-
- uses: actions/checkout@v3
125+
- uses: actions/checkout@v4
125126
- uses: ./.github/workflows/ubuntu-prepare
126127
- uses: Swatinem/rust-cache@v2
127128
with: { shared-key: "ubuntu" }
@@ -141,7 +142,7 @@ jobs:
141142
ubuntu-clippy:
142143
runs-on: ubuntu-22.04
143144
steps:
144-
- uses: actions/checkout@v3
145+
- uses: actions/checkout@v4
145146
- uses: ./.github/workflows/ubuntu-prepare
146147
- uses: Swatinem/rust-cache@v2
147148
with: { shared-key: "ubuntu" }
@@ -163,7 +164,7 @@ jobs:
163164
matrix:
164165
instance_idx: [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17" ]
165166
steps:
166-
- uses: actions/checkout@v3
167+
- uses: actions/checkout@v4
167168
- uses: ./.github/workflows/ubuntu-prepare
168169
- uses: Swatinem/rust-cache@v2
169170
with: { shared-key: "ubuntu" }
@@ -178,11 +179,8 @@ jobs:
178179
runs-on: ubuntu-latest
179180
needs: ubuntu
180181
steps:
181-
- uses: actions-rs/toolchain@v1
182-
with:
183-
profile: minimal
184-
toolchain: stable
185-
- uses: actions/checkout@v3
182+
- uses: dtolnay/rust-toolchain@stable
183+
- uses: actions/checkout@v4
186184
- uses: Swatinem/rust-cache@v2
187185
with: { shared-key: "ubuntu" }
188186
- name: Install smoke test deps
@@ -193,7 +191,7 @@ jobs:
193191
python-bindings:
194192
runs-on: ubuntu-latest
195193
steps:
196-
- uses: actions/checkout@v3
194+
- uses: actions/checkout@v4
197195
- uses: ./.github/workflows/ubuntu-prepare
198196
- uses: Swatinem/rust-cache@v2
199197
with: { shared-key: "ubuntu" }
@@ -209,7 +207,7 @@ jobs:
209207
cargo-fmt:
210208
runs-on: ubuntu-latest
211209
steps:
212-
- uses: actions/checkout@v3
210+
- uses: actions/checkout@v4
213211
- uses: ./.github/workflows/ubuntu-prepare
214212
- uses: Swatinem/rust-cache@v2
215213
with: { shared-key: "ubuntu" }
@@ -222,7 +220,7 @@ jobs:
222220
fuzzers-preflight:
223221
runs-on: ubuntu-latest
224222
steps:
225-
- uses: actions/checkout@v3
223+
- uses: actions/checkout@v4
226224
- name: Fuzzer in CI Check
227225
run: ./scripts/check_tested_fuzzers.sh
228226

@@ -308,7 +306,7 @@ jobs:
308306
- ./fuzzers/others/tutorial
309307
runs-on: ${{ matrix.os }}
310308
steps:
311-
- uses: actions/checkout@v3
309+
- uses: actions/checkout@v4
312310
- uses: ./.github/workflows/fuzzer-tester-prepare
313311
- name: Build and run example fuzzers (Linux)
314312
if: runner.os == 'Linux'
@@ -322,7 +320,7 @@ jobs:
322320
outputs:
323321
qemu: ${{ steps.filter.outputs.qemu }}
324322
steps:
325-
- uses: actions/checkout@v3
323+
- uses: actions/checkout@v4
326324
- uses: dorny/paths-filter@v3
327325
id: filter
328326
with:
@@ -352,7 +350,7 @@ jobs:
352350
runs-on: [ self-hosted, qemu ]
353351
container: registry.gitlab.com/qemu-project/qemu/qemu/ubuntu2204:latest
354352
steps:
355-
- uses: actions/checkout@v3
353+
- uses: actions/checkout@v4
356354
- uses: ./.github/workflows/qemu-fuzzer-tester-prepare
357355
- name: Build and run example QEMU fuzzers (Linux)
358356
if: runner.os == 'Linux'
@@ -362,13 +360,10 @@ jobs:
362360
nostd-build:
363361
runs-on: ubuntu-latest
364362
steps:
365-
- uses: actions-rs/toolchain@v1
363+
- uses: dtolnay/rust-toolchain@nightly
366364
with:
367-
profile: minimal
368-
toolchain: nightly
369-
override: true
370365
components: rust-src
371-
- uses: actions/checkout@v3
366+
- uses: actions/checkout@v4
372367
- uses: Swatinem/rust-cache@v2
373368
- name: Add targets
374369
run: rustup target add arm-linux-androideabi && rustup target add thumbv6m-none-eabi
@@ -382,13 +377,10 @@ jobs:
382377
nostd-clippy:
383378
runs-on: ubuntu-latest
384379
steps:
385-
- uses: actions-rs/toolchain@v1
380+
- uses: dtolnay/rust-toolchain@nightly
386381
with:
387-
profile: minimal
388-
toolchain: nightly
389-
override: true
390382
components: clippy, rust-src
391-
- uses: actions/checkout@v3
383+
- uses: actions/checkout@v4
392384
- uses: Swatinem/rust-cache@v2
393385
- name: Add targets
394386
run: rustup target add arm-linux-androideabi && rustup target add thumbv6m-none-eabi
@@ -400,7 +392,7 @@ jobs:
400392
build-docker:
401393
runs-on: ubuntu-latest
402394
steps:
403-
- uses: actions/checkout@v3
395+
- uses: actions/checkout@v4
404396
- name: Build docker
405397
run: docker build -t libafl .
406398

@@ -409,7 +401,7 @@ jobs:
409401
needs:
410402
- common
411403
steps:
412-
- uses: actions/checkout@v3
404+
- uses: actions/checkout@v4
413405
- uses: ./.github/workflows/windows-tester-prepare
414406
- name: Build fuzzers/frida_libpng
415407
run: cd fuzzers/frida/frida_libpng/ && cargo make test
@@ -419,7 +411,7 @@ jobs:
419411
needs:
420412
- common
421413
steps:
422-
- uses: actions/checkout@v3
414+
- uses: actions/checkout@v4
423415
- uses: ./.github/workflows/windows-tester-prepare
424416
- name: Build fuzzers/stb/libfuzzer_stb_image
425417
run: cd fuzzers/stb/libfuzzer_stb_image && cargo build --release
@@ -429,7 +421,7 @@ jobs:
429421
needs:
430422
- common
431423
steps:
432-
- uses: actions/checkout@v3
424+
- uses: actions/checkout@v4
433425
- uses: ./.github/workflows/windows-tester-prepare
434426
- name: Build fuzzers/frida/frida_gdiplus
435427
run: cd fuzzers/frida/frida_gdiplus/ && cargo make test && cargo make test_cmplog
@@ -439,7 +431,7 @@ jobs:
439431
needs:
440432
- common
441433
steps:
442-
- uses: actions/checkout@v3
434+
- uses: actions/checkout@v4
443435
- uses: ./.github/workflows/windows-tester-prepare
444436
- name: install cxx bridge
445437
run: cargo install cxxbridge-cmd
@@ -451,12 +443,9 @@ jobs:
451443
needs:
452444
- common
453445
steps:
454-
- uses: actions-rs/toolchain@v1
455-
with:
456-
profile: minimal
457-
toolchain: stable
458-
- uses: actions/checkout@v3
459-
- uses: ./.github/workflows/windows-tester-prepare
446+
- uses: dtolnay/rust-toolchain@stable
447+
- uses: actions/checkout@v4
448+
- uses: ./.github/workflows/windows-tester-prepare
460449
- uses: Swatinem/rust-cache@v2
461450
- name: Run real clippy, not the fake one
462451
shell: pwsh
@@ -465,17 +454,14 @@ jobs:
465454
macos:
466455
runs-on: macOS-latest
467456
steps:
468-
- uses: actions-rs/toolchain@v1
469-
with:
470-
profile: minimal
471-
toolchain: stable
457+
- uses: dtolnay/rust-toolchain@stable
472458
- name: Add nightly clippy
473459
run: rustup toolchain install nightly --component clippy --allow-downgrade && rustup default nightly
474460
- name: Install deps
475461
run: brew install z3 gtk+3
476462
- name: Install cxxbridge
477463
run: cargo install cxxbridge-cmd
478-
- uses: actions/checkout@v3
464+
- uses: actions/checkout@v4
479465
- uses: Swatinem/rust-cache@v2
480466
- name: MacOS Build
481467
run: cargo build --verbose
@@ -489,32 +475,26 @@ jobs:
489475
ios:
490476
runs-on: macOS-latest
491477
steps:
492-
- uses: actions-rs/toolchain@v1
493-
with:
494-
profile: minimal
495-
toolchain: stable
478+
- uses: dtolnay/rust-toolchain@stable
496479
- name: install ios
497480
run: rustup target add aarch64-apple-ios
498-
- uses: actions/checkout@v3
481+
- uses: actions/checkout@v4
499482
- uses: Swatinem/rust-cache@v2
500483
- name: Build iOS
501484
run: cargo build --target aarch64-apple-ios && cd libafl_frida && cargo build --target aarch64-apple-ios && cd ..
502485

503486
android:
504487
runs-on: ubuntu-22.04
505488
steps:
506-
- uses: actions-rs/toolchain@v1
507-
with:
508-
profile: minimal
509-
toolchain: stable
489+
- uses: dtolnay/rust-toolchain@stable
510490
- uses: nttld/setup-ndk@v1
511491
with:
512492
ndk-version: r25b
513493
- name: install android
514494
run: rustup target add aarch64-linux-android
515495
- name: install cargo ndk
516496
run: cargo install cargo-ndk
517-
- uses: actions/checkout@v3
497+
- uses: actions/checkout@v4
518498
- uses: Swatinem/rust-cache@v2
519499
- name: Build Android
520500
run: cd libafl && cargo ndk -t arm64-v8a build --release
@@ -533,7 +513,7 @@ jobs:
533513
runs-on: ubuntu-22.04
534514
name: Simple build in FreeBSD
535515
steps:
536-
- uses: actions/checkout@v3
516+
- uses: actions/checkout@v4
537517
- name: Test in FreeBSD
538518
id: test
539519
uses: vmactions/freebsd-vm@v1

.github/workflows/fuzzer-tester-prepare/action.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ description: Sets up the Rust environment for the CI workflow
33
runs:
44
using: composite
55
steps:
6-
- uses: actions/checkout@v3
6+
- uses: actions/checkout@v4
77
with:
88
submodules: true
99
fetch-depth: 0
@@ -26,18 +26,18 @@ runs:
2626
shell: bash
2727
run: rustup target add wasm32-unknown-unknown
2828
- name: install cargo-make
29-
uses: baptiste0928/cargo-install@v1.3.0
29+
uses: baptiste0928/cargo-install@v3
3030
with:
3131
crate: cargo-make
3232
- name: install wasm-pack
33-
uses: baptiste0928/cargo-install@v1.3.0
33+
uses: baptiste0928/cargo-install@v3
3434
with:
3535
crate: wasm-pack
3636
- name: install cxxbridge-cmd
37-
uses: baptiste0928/cargo-install@v1.3.0
37+
uses: baptiste0928/cargo-install@v3
3838
with:
3939
crate: cxxbridge-cmd
4040
- name: install chrome
4141
uses: browser-actions/setup-chrome@v1
4242
with:
43-
chrome-version: stable
43+
chrome-version: stable

.github/workflows/qemu-fuzzer-tester-prepare/action.yml

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ description: Sets up the QEMU fuzzers environment
33
runs:
44
using: composite
55
steps:
6-
- uses: actions/checkout@v3
6+
- uses: actions/checkout@v4
77
with:
88
submodules: true
99
fetch-depth: 0
@@ -13,17 +13,14 @@ runs:
1313
- uses: ./.github/workflows/ubuntu-prepare
1414
- uses: Swatinem/rust-cache@v2
1515
with: { shared-key: "${{ runner.os }}-shared-fuzzer-cache" }
16-
- uses: actions-rs/toolchain@v1
17-
with:
18-
profile: minimal
19-
toolchain: stable
16+
- uses: dtolnay/rust-toolchain@stable
2017
- name: pip install
2118
shell: bash
2219
run: python3 -m pip install msgpack jinja2 find_libpython
2320
- name: enable mult-thread for `make`
2421
shell: bash
2522
run: export MAKEFLAGS="-j$(expr $(nproc) \+ 1)"
2623
- name: install cargo-make
27-
uses: baptiste0928/cargo-install@v1.3.0
24+
uses: baptiste0928/cargo-install@v3
2825
with:
2926
crate: cargo-make

0 commit comments

Comments
 (0)