Skip to content

Commit a586c2a

Browse files
ci: use ring and cache Rust builds
1 parent f35c781 commit a586c2a

7 files changed

Lines changed: 58 additions & 159 deletions

File tree

.github/workflows/targets.yml

Lines changed: 33 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ on:
3434
- rust-toolchain.toml
3535

3636
env:
37-
AWS_LC_SYS_NO_JITTER_ENTROPY: "1"
3837
CARGO_INCREMENTAL: "0"
3938
# Hosted runners have 14 GB disks. Keep symbols for panic backtraces but do
4039
# not emit DWARF into every dependency and test binary.
@@ -102,8 +101,14 @@ jobs:
102101
env:
103102
DEN_TEST_CC: ${{ matrix.cc }}
104103
DEN_TEST_CC_ARGS: ${{ matrix.cc_args }}
104+
RUSTC_WRAPPER: sccache
105+
SCCACHE_GHA_ENABLED: "true"
105106
steps:
106107
- uses: actions/checkout@v4
108+
- name: Install sccache
109+
uses: mozilla-actions/sccache-action@fc920bf0ec8de6ee65d409111f7ec508035751ba # v0.0.11
110+
with:
111+
version: v0.16.0
107112
- name: Fetch pinned WPT fixture
108113
shell: bash
109114
run: |
@@ -232,21 +237,27 @@ jobs:
232237
-isystem /usr/lib/llvm-18/lib/clang/18/include
233238
-idirafter /usr/include
234239
CROSS_BUILD_ENV_PASSTHROUGH: >-
235-
AWS_LC_SYS_NO_JITTER_ENTROPY
240+
ACTIONS_CACHE_SERVICE_V2 ACTIONS_RESULTS_URL ACTIONS_RUNTIME_TOKEN
236241
BINDGEN_EXTRA_CLANG_ARGS_i686_pc_windows_gnu
237242
DEN_TEST_CC INSTA_UPDATE INSTA_WORKSPACE_ROOT
238243
RUST_BACKTRACE RUST_TEST_THREADS
244+
SCCACHE_GHA_ENABLED
239245
RUSTFLAGS TARGET TARGET_FEATURES TARGET_WASM CARGO_INCREMENTAL
240246
CARGO_PROFILE_DEV_DEBUG CARGO_PROFILE_TEST_DEBUG
241247
CARGO_PROFILE_DEV_OPT_LEVEL CARGO_PROFILE_TEST_OPT_LEVEL
242248
DEN_TEST_CC: ${{ matrix.cc }}
243249
RUSTFLAGS: ${{ matrix.rustflags }}
244250
RUST_TEST_THREADS: "1"
251+
SCCACHE_GHA_ENABLED: "true"
245252
TARGET: ${{ matrix.target }}
246253
TARGET_FEATURES: ${{ matrix.features }}
247254
TARGET_WASM: ${{ matrix.wasm }}
248255
steps:
249256
- uses: actions/checkout@v4
257+
- name: Install sccache
258+
uses: mozilla-actions/sccache-action@fc920bf0ec8de6ee65d409111f7ec508035751ba # v0.0.11
259+
with:
260+
version: v0.16.0
250261
- name: Fetch pinned WPT fixture
251262
run: |
252263
wpt_rev=$(git ls-tree HEAD vendor/wpt | awk '{print $3}')
@@ -265,6 +276,8 @@ jobs:
265276
rustup toolchain install stable --profile minimal --no-self-update
266277
--target ${{ matrix.target }}
267278
- name: Install cross
279+
env:
280+
RUSTC_WRAPPER: sccache
268281
run: >-
269282
cargo install cross --git https://github.com/cross-rs/cross
270283
--rev 8c1a8aa4b661711f4b7b6ac07c2e8929ce2f7d27 --locked
@@ -273,9 +286,12 @@ jobs:
273286
run: |
274287
# cross-util discards the container exit status, so require a success marker.
275288
status_file="target/.nextest-$TARGET.ok"
289+
mkdir -p target
290+
cp "$SCCACHE_PATH" target/sccache
276291
rm -f "$status_file"
277292
cross-util run --target "$TARGET" -- '
278293
set -eu
294+
export RUSTC_WRAPPER=/target/sccache
279295
archive=/tmp/cargo-nextest.tar.gz
280296
curl --proto "=https" --tlsv1.2 -fsSLo "$archive" \
281297
https://github.com/nextest-rs/nextest/releases/download/cargo-nextest-0.9.143/cargo-nextest-0.9.143-x86_64-unknown-linux-gnu.tar.gz
@@ -284,13 +300,6 @@ jobs:
284300
"$archive" | sha256sum -c -
285301
tar -xzf "$archive" -C /tmp
286302
287-
case "$TARGET" in
288-
i686-pc-windows-gnu|x86_64-pc-windows-gnu)
289-
apt-get update
290-
apt-get install -y --no-install-recommends nasm
291-
;;
292-
esac
293-
294303
set --
295304
if [ "${TARGET_WASM:-1}" = 0 ]; then
296305
set -- --exclude den-stdlib-wasm
@@ -319,9 +328,15 @@ jobs:
319328
CARGO_PROFILE_TEST_OPT_LEVEL: "1"
320329
RUSTFLAGS: -C target-feature=-crt-static
321330
RUST_TEST_THREADS: "1"
331+
RUSTC_WRAPPER: sccache
332+
SCCACHE_GHA_ENABLED: "true"
322333
TARGET: ${{ matrix.target }}
323334
steps:
324335
- uses: actions/checkout@v4
336+
- name: Install sccache
337+
uses: mozilla-actions/sccache-action@fc920bf0ec8de6ee65d409111f7ec508035751ba # v0.0.11
338+
with:
339+
version: v0.16.0
325340
- name: Fetch pinned WPT fixture
326341
run: |
327342
wpt_rev=$(git ls-tree HEAD vendor/wpt | awk '{print $3}')
@@ -377,8 +392,15 @@ jobs:
377392
name: x86_64-unknown-linux-musl release
378393
runs-on: ubuntu-24.04
379394
timeout-minutes: 30
395+
env:
396+
RUSTC_WRAPPER: sccache
397+
SCCACHE_GHA_ENABLED: "true"
380398
steps:
381399
- uses: actions/checkout@v4
400+
- name: Install sccache
401+
uses: mozilla-actions/sccache-action@fc920bf0ec8de6ee65d409111f7ec508035751ba # v0.0.11
402+
with:
403+
version: v0.16.0
382404
- name: Install musl target and toolchain
383405
run: |
384406
rustup target add x86_64-unknown-linux-musl
@@ -606,6 +628,8 @@ jobs:
606628
run: |
607629
export PATH="$HOME/.cargo/bin:/usr/llvm/19/bin:/usr/gnu/bin:/opt/csw/bin:$PATH"
608630
export LIBCLANG_PATH=/usr/llvm/19/lib/amd64
631+
export CC_x86_64_pc_solaris=clang
632+
export CFLAGS_x86_64_pc_solaris=-D_STRICT_SYMBOLS
609633
cargo nextest run --locked --profile compat --no-fail-fast --workspace \
610634
--exclude den-stdlib-wasm --target x86_64-pc-solaris \
611635
--no-default-features \

0 commit comments

Comments
 (0)