From 8b36a32ed5d834b23e970d5b723dd7df1f1c94a2 Mon Sep 17 00:00:00 2001 From: Dario Nieuwenhuis Date: Thu, 21 Dec 2023 14:57:49 +0100 Subject: ci: use beta, add secondary nightly ci. --- .github/ci/build-nightly.sh | 29 +++++++++++++++++++++++++++++ .github/ci/build-stable.sh | 30 ------------------------------ .github/ci/rustfmt.sh | 12 ++++++++++++ .github/ci/test-nightly.sh | 13 +++++++++++++ .github/ci/test.sh | 3 --- 5 files changed, 54 insertions(+), 33 deletions(-) create mode 100755 .github/ci/build-nightly.sh delete mode 100755 .github/ci/build-stable.sh create mode 100755 .github/ci/rustfmt.sh create mode 100755 .github/ci/test-nightly.sh (limited to '.github') diff --git a/.github/ci/build-nightly.sh b/.github/ci/build-nightly.sh new file mode 100755 index 000000000..95cb4100c --- /dev/null +++ b/.github/ci/build-nightly.sh @@ -0,0 +1,29 @@ +#!/bin/bash +## on push branch~=gh-readonly-queue/main/.* +## on pull_request + +set -euo pipefail + +export RUSTUP_HOME=/ci/cache/rustup +export CARGO_HOME=/ci/cache/cargo +export CARGO_TARGET_DIR=/ci/cache/target +mv rust-toolchain-nightly.toml rust-toolchain.toml + +# needed for "dumb HTTP" transport support +# used when pointing stm32-metapac to a CI-built one. +export CARGO_NET_GIT_FETCH_WITH_CLI=true + +# Restore lockfiles +if [ -f /ci/cache/lockfiles.tar ]; then + echo Restoring lockfiles... + tar xf /ci/cache/lockfiles.tar +fi + +hashtime restore /ci/cache/filetime.json || true +hashtime save /ci/cache/filetime.json + +./ci-nightly.sh + +# Save lockfiles +echo Saving lockfiles... +find . -type f -name Cargo.lock -exec tar -cf /ci/cache/lockfiles.tar '{}' \+ diff --git a/.github/ci/build-stable.sh b/.github/ci/build-stable.sh deleted file mode 100755 index e0bd77867..000000000 --- a/.github/ci/build-stable.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash -## on push branch~=gh-readonly-queue/main/.* -## on pull_request - -set -euo pipefail - -export RUSTUP_HOME=/ci/cache/rustup -export CARGO_HOME=/ci/cache/cargo -export CARGO_TARGET_DIR=/ci/cache/target - -# needed for "dumb HTTP" transport support -# used when pointing stm32-metapac to a CI-built one. -export CARGO_NET_GIT_FETCH_WITH_CLI=true - -# Restore lockfiles -if [ -f /ci/cache/lockfiles.tar ]; then - echo Restoring lockfiles... - tar xf /ci/cache/lockfiles.tar -fi - -hashtime restore /ci/cache/filetime.json || true -hashtime save /ci/cache/filetime.json - -sed -i 's/channel.*/channel = "beta"/g' rust-toolchain.toml - -./ci_stable.sh - -# Save lockfiles -echo Saving lockfiles... -find . -type f -name Cargo.lock -exec tar -cf /ci/cache/lockfiles.tar '{}' \+ diff --git a/.github/ci/rustfmt.sh b/.github/ci/rustfmt.sh new file mode 100755 index 000000000..369239cfe --- /dev/null +++ b/.github/ci/rustfmt.sh @@ -0,0 +1,12 @@ +#!/bin/bash +## on push branch~=gh-readonly-queue/main/.* +## on pull_request + +set -euo pipefail + +export RUSTUP_HOME=/ci/cache/rustup +export CARGO_HOME=/ci/cache/cargo +export CARGO_TARGET_DIR=/ci/cache/target +mv rust-toolchain-nightly.toml rust-toolchain.toml + +find . -name '*.rs' -not -path '*target*' | xargs rustfmt --check --skip-children --unstable-features --edition 2021 diff --git a/.github/ci/test-nightly.sh b/.github/ci/test-nightly.sh new file mode 100755 index 000000000..d6e5dc574 --- /dev/null +++ b/.github/ci/test-nightly.sh @@ -0,0 +1,13 @@ +#!/bin/bash +## on push branch~=gh-readonly-queue/main/.* +## on pull_request + +set -euo pipefail + +export RUSTUP_HOME=/ci/cache/rustup +export CARGO_HOME=/ci/cache/cargo +export CARGO_TARGET_DIR=/ci/cache/target +mv rust-toolchain-nightly.toml rust-toolchain.toml + +MIRIFLAGS=-Zmiri-ignore-leaks cargo miri test --manifest-path ./embassy-executor/Cargo.toml +MIRIFLAGS=-Zmiri-ignore-leaks cargo miri test --manifest-path ./embassy-executor/Cargo.toml --features nightly diff --git a/.github/ci/test.sh b/.github/ci/test.sh index 0ec65d2a1..369f6d221 100755 --- a/.github/ci/test.sh +++ b/.github/ci/test.sh @@ -8,9 +8,6 @@ export RUSTUP_HOME=/ci/cache/rustup export CARGO_HOME=/ci/cache/cargo export CARGO_TARGET_DIR=/ci/cache/target -MIRIFLAGS=-Zmiri-ignore-leaks cargo miri test --manifest-path ./embassy-executor/Cargo.toml -MIRIFLAGS=-Zmiri-ignore-leaks cargo miri test --manifest-path ./embassy-executor/Cargo.toml --features nightly - cargo test --manifest-path ./embassy-sync/Cargo.toml cargo test --manifest-path ./embassy-embedded-hal/Cargo.toml cargo test --manifest-path ./embassy-hal-internal/Cargo.toml -- cgit