ci: shard linux gnu nextest tests into 2 partitions

This commit is contained in:
Michael Bolin
2026-02-21 00:34:31 -08:00
parent 1af2a37ada
commit f69e44be48
4 changed files with 291 additions and 17 deletions

10
.github/scripts/enable-unprivileged-userns.sh vendored Executable file
View File

@@ -0,0 +1,10 @@
#!/usr/bin/env bash
set -euo pipefail
# Required for bubblewrap to work on Linux CI runners.
sudo sysctl -w kernel.unprivileged_userns_clone=1
# Ubuntu 24.04+ can additionally gate unprivileged user namespaces behind AppArmor.
if sudo sysctl -a 2>/dev/null | grep -q '^kernel.apparmor_restrict_unprivileged_userns'; then
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
fi

13
.github/scripts/nextest-archive-build.sh vendored Executable file
View File

@@ -0,0 +1,13 @@
#!/usr/bin/env bash
set -euo pipefail
archive_file="$1"
target="${2:-x86_64-unknown-linux-gnu}"
cargo_profile="${3:-ci-test}"
cargo nextest archive \
--all-features \
--target "$target" \
--cargo-profile "$cargo_profile" \
--timings \
--archive-file "$archive_file"

12
.github/scripts/nextest-archive-run-shard.sh vendored Executable file
View File

@@ -0,0 +1,12 @@
#!/usr/bin/env bash
set -euo pipefail
archive_file="$1"
workspace_remap="$2"
partition_spec="$3"
cargo nextest run \
--archive-file "$archive_file" \
--workspace-remap "$workspace_remap" \
--partition "$partition_spec" \
--no-fail-fast