aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rwxr-xr-x.github/ci/build-nightly.sh (renamed from .github/ci/build-stable.sh)7
-rwxr-xr-x.github/ci/build.sh2
-rwxr-xr-x.github/ci/crlf.sh2
-rwxr-xr-x.github/ci/doc.sh31
-rwxr-xr-x.github/ci/rustfmt.sh12
-rwxr-xr-x.github/ci/test-nightly.sh13
-rwxr-xr-x.github/ci/test.sh14
7 files changed, 58 insertions, 23 deletions
diff --git a/.github/ci/build-stable.sh b/.github/ci/build-nightly.sh
index 9160a2be2..95cb4100c 100755
--- a/.github/ci/build-stable.sh
+++ b/.github/ci/build-nightly.sh
@@ -7,6 +7,7 @@ set -euo pipefail
7export RUSTUP_HOME=/ci/cache/rustup 7export RUSTUP_HOME=/ci/cache/rustup
8export CARGO_HOME=/ci/cache/cargo 8export CARGO_HOME=/ci/cache/cargo
9export CARGO_TARGET_DIR=/ci/cache/target 9export CARGO_TARGET_DIR=/ci/cache/target
10mv rust-toolchain-nightly.toml rust-toolchain.toml
10 11
11# needed for "dumb HTTP" transport support 12# needed for "dumb HTTP" transport support
12# used when pointing stm32-metapac to a CI-built one. 13# used when pointing stm32-metapac to a CI-built one.
@@ -21,10 +22,8 @@ fi
21hashtime restore /ci/cache/filetime.json || true 22hashtime restore /ci/cache/filetime.json || true
22hashtime save /ci/cache/filetime.json 23hashtime save /ci/cache/filetime.json
23 24
24sed -i 's/channel.*/channel = "beta"/g' rust-toolchain.toml 25./ci-nightly.sh
25
26./ci_stable.sh
27 26
28# Save lockfiles 27# Save lockfiles
29echo Saving lockfiles... 28echo Saving lockfiles...
30find . -type f -name Cargo.lock -exec tar -cf /ci/cache/lockfiles.tar '{}' \+ \ No newline at end of file 29find . -type f -name Cargo.lock -exec tar -cf /ci/cache/lockfiles.tar '{}' \+
diff --git a/.github/ci/build.sh b/.github/ci/build.sh
index e7a6c0d86..77d2b3cab 100755
--- a/.github/ci/build.sh
+++ b/.github/ci/build.sh
@@ -31,4 +31,4 @@ hashtime save /ci/cache/filetime.json
31 31
32# Save lockfiles 32# Save lockfiles
33echo Saving lockfiles... 33echo Saving lockfiles...
34find . -type f -name Cargo.lock -exec tar -cf /ci/cache/lockfiles.tar '{}' \+ \ No newline at end of file 34find . -type f -name Cargo.lock -exec tar -cf /ci/cache/lockfiles.tar '{}' \+
diff --git a/.github/ci/crlf.sh b/.github/ci/crlf.sh
index 457510407..69838ce88 100755
--- a/.github/ci/crlf.sh
+++ b/.github/ci/crlf.sh
@@ -14,4 +14,4 @@ else
14 echo -e "ERROR: Found ${NR_FILES} files with CRLF endings." 14 echo -e "ERROR: Found ${NR_FILES} files with CRLF endings."
15 echo "$FILES_WITH_CRLF" 15 echo "$FILES_WITH_CRLF"
16 exit "$NR_FILES" 16 exit "$NR_FILES"
17fi \ No newline at end of file 17fi
diff --git a/.github/ci/doc.sh b/.github/ci/doc.sh
index ed3036f2f..7112d8aaa 100755
--- a/.github/ci/doc.sh
+++ b/.github/ci/doc.sh
@@ -1,13 +1,14 @@
1#!/bin/bash 1#!/bin/bash
2## on push branch=main 2## on push branch=main
3 3
4set -euo pipefail 4set -euxo pipefail
5 5
6export RUSTUP_HOME=/ci/cache/rustup 6export RUSTUP_HOME=/ci/cache/rustup
7export CARGO_HOME=/ci/cache/cargo 7export CARGO_HOME=/ci/cache/cargo
8export CARGO_TARGET_DIR=/ci/cache/target 8export CARGO_TARGET_DIR=/ci/cache/target
9export BUILDER_THREADS=4 9export BUILDER_THREADS=4
10export BUILDER_COMPRESS=true 10export BUILDER_COMPRESS=true
11mv rust-toolchain-nightly.toml rust-toolchain.toml
11 12
12# force rustup to download the toolchain before starting building. 13# force rustup to download the toolchain before starting building.
13# Otherwise, the docs builder is running multiple instances of cargo rustdoc concurrently. 14# Otherwise, the docs builder is running multiple instances of cargo rustdoc concurrently.
@@ -15,29 +16,37 @@ export BUILDER_COMPRESS=true
15# which makes rustup very sad 16# which makes rustup very sad
16rustc --version > /dev/null 17rustc --version > /dev/null
17 18
18docserver-builder -i ./embassy-boot/boot -o webroot/crates/embassy-boot/git.zup 19docserver-builder -i ./embassy-boot -o webroot/crates/embassy-boot/git.zup
19docserver-builder -i ./embassy-boot/nrf -o webroot/crates/embassy-boot-nrf/git.zup 20docserver-builder -i ./embassy-boot-nrf -o webroot/crates/embassy-boot-nrf/git.zup
20docserver-builder -i ./embassy-boot/rp -o webroot/crates/embassy-boot-rp/git.zup 21docserver-builder -i ./embassy-boot-rp -o webroot/crates/embassy-boot-rp/git.zup
21docserver-builder -i ./embassy-boot/stm32 -o webroot/crates/embassy-boot-stm32/git.zup 22docserver-builder -i ./embassy-boot-stm32 -o webroot/crates/embassy-boot-stm32/git.zup
22docserver-builder -i ./embassy-embedded-hal -o webroot/crates/embassy-embedded-hal/git.zup 23docserver-builder -i ./embassy-embedded-hal -o webroot/crates/embassy-embedded-hal/git.zup
23docserver-builder -i ./embassy-executor -o webroot/crates/embassy-executor/git.zup 24docserver-builder -i ./embassy-executor -o webroot/crates/embassy-executor/git.zup
24docserver-builder -i ./embassy-futures -o webroot/crates/embassy-futures/git.zup 25docserver-builder -i ./embassy-futures -o webroot/crates/embassy-futures/git.zup
25docserver-builder -i ./embassy-net -o webroot/crates/embassy-net/git.zup
26docserver-builder -i ./embassy-net-driver -o webroot/crates/embassy-net-driver/git.zup
27docserver-builder -i ./embassy-net-driver-channel -o webroot/crates/embassy-net-driver-channel/git.zup
28docserver-builder -i ./embassy-nrf -o webroot/crates/embassy-nrf/git.zup 26docserver-builder -i ./embassy-nrf -o webroot/crates/embassy-nrf/git.zup
29docserver-builder -i ./embassy-rp -o webroot/crates/embassy-rp/git.zup 27docserver-builder -i ./embassy-rp -o webroot/crates/embassy-rp/git.zup
30docserver-builder -i ./embassy-sync -o webroot/crates/embassy-sync/git.zup 28docserver-builder -i ./embassy-sync -o webroot/crates/embassy-sync/git.zup
29docserver-builder -i ./cyw43 -o webroot/crates/cyw43/git.zup
30docserver-builder -i ./cyw43-pio -o webroot/crates/cyw43-pio/git.zup
31docserver-builder -i ./embassy-stm32-wpan -o webroot/crates/embassy-stm32-wpan/git.zup --output-static webroot/static
32
31docserver-builder -i ./embassy-time -o webroot/crates/embassy-time/git.zup 33docserver-builder -i ./embassy-time -o webroot/crates/embassy-time/git.zup
34docserver-builder -i ./embassy-time-driver -o webroot/crates/embassy-time-driver/git.zup
35docserver-builder -i ./embassy-time-queue-driver -o webroot/crates/embassy-time-queue-driver/git.zup
36
32docserver-builder -i ./embassy-usb -o webroot/crates/embassy-usb/git.zup 37docserver-builder -i ./embassy-usb -o webroot/crates/embassy-usb/git.zup
38docserver-builder -i ./embassy-usb-dfu -o webroot/crates/embassy-usb-dfu/git.zup
33docserver-builder -i ./embassy-usb-driver -o webroot/crates/embassy-usb-driver/git.zup 39docserver-builder -i ./embassy-usb-driver -o webroot/crates/embassy-usb-driver/git.zup
34docserver-builder -i ./embassy-usb-logger -o webroot/crates/embassy-usb-logger/git.zup 40docserver-builder -i ./embassy-usb-logger -o webroot/crates/embassy-usb-logger/git.zup
35docserver-builder -i ./cyw43 -o webroot/crates/cyw43/git.zup 41
36docserver-builder -i ./cyw43-pio -o webroot/crates/cyw43-pio/git.zup 42docserver-builder -i ./embassy-net -o webroot/crates/embassy-net/git.zup
43docserver-builder -i ./embassy-net-driver -o webroot/crates/embassy-net-driver/git.zup
44docserver-builder -i ./embassy-net-driver-channel -o webroot/crates/embassy-net-driver-channel/git.zup
37docserver-builder -i ./embassy-net-wiznet -o webroot/crates/embassy-net-wiznet/git.zup 45docserver-builder -i ./embassy-net-wiznet -o webroot/crates/embassy-net-wiznet/git.zup
46docserver-builder -i ./embassy-net-ppp -o webroot/crates/embassy-net-ppp/git.zup
47docserver-builder -i ./embassy-net-tuntap -o webroot/crates/embassy-net-tuntap/git.zup
38docserver-builder -i ./embassy-net-enc28j60 -o webroot/crates/embassy-net-enc28j60/git.zup 48docserver-builder -i ./embassy-net-enc28j60 -o webroot/crates/embassy-net-enc28j60/git.zup
39docserver-builder -i ./embassy-net-esp-hosted -o webroot/crates/embassy-net-esp-hosted/git.zup 49docserver-builder -i ./embassy-net-esp-hosted -o webroot/crates/embassy-net-esp-hosted/git.zup
40docserver-builder -i ./embassy-stm32-wpan -o webroot/crates/embassy-stm32-wpan/git.zup --output-static webroot/static
41docserver-builder -i ./embassy-net-adin1110 -o webroot/crates/embassy-net-adin1110/git.zup 50docserver-builder -i ./embassy-net-adin1110 -o webroot/crates/embassy-net-adin1110/git.zup
42 51
43export KUBECONFIG=/ci/secrets/kubeconfig.yml 52export KUBECONFIG=/ci/secrets/kubeconfig.yml
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 @@
1#!/bin/bash
2## on push branch~=gh-readonly-queue/main/.*
3## on pull_request
4
5set -euo pipefail
6
7export RUSTUP_HOME=/ci/cache/rustup
8export CARGO_HOME=/ci/cache/cargo
9export CARGO_TARGET_DIR=/ci/cache/target
10mv rust-toolchain-nightly.toml rust-toolchain.toml
11
12find . -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 @@
1#!/bin/bash
2## on push branch~=gh-readonly-queue/main/.*
3## on pull_request
4
5set -euo pipefail
6
7export RUSTUP_HOME=/ci/cache/rustup
8export CARGO_HOME=/ci/cache/cargo
9export CARGO_TARGET_DIR=/ci/cache/target
10mv rust-toolchain-nightly.toml rust-toolchain.toml
11
12MIRIFLAGS=-Zmiri-ignore-leaks cargo miri test --manifest-path ./embassy-executor/Cargo.toml
13MIRIFLAGS=-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 1ee760d31..8a58939f6 100755
--- a/.github/ci/test.sh
+++ b/.github/ci/test.sh
@@ -4,17 +4,19 @@
4 4
5set -euo pipefail 5set -euo pipefail
6 6
7MIRIFLAGS=-Zmiri-ignore-leaks cargo miri test --manifest-path ./embassy-executor/Cargo.toml 7export RUSTUP_HOME=/ci/cache/rustup
8MIRIFLAGS=-Zmiri-ignore-leaks cargo miri test --manifest-path ./embassy-executor/Cargo.toml --features nightly 8export CARGO_HOME=/ci/cache/cargo
9export CARGO_TARGET_DIR=/ci/cache/target
9 10
10cargo test --manifest-path ./embassy-sync/Cargo.toml 11cargo test --manifest-path ./embassy-sync/Cargo.toml
11cargo test --manifest-path ./embassy-embedded-hal/Cargo.toml 12cargo test --manifest-path ./embassy-embedded-hal/Cargo.toml
12cargo test --manifest-path ./embassy-hal-internal/Cargo.toml 13cargo test --manifest-path ./embassy-hal-internal/Cargo.toml
13cargo test --manifest-path ./embassy-time/Cargo.toml --features generic-queue 14cargo test --manifest-path ./embassy-time/Cargo.toml --features generic-queue,mock-driver
15cargo test --manifest-path ./embassy-time-driver/Cargo.toml
14 16
15cargo test --manifest-path ./embassy-boot/boot/Cargo.toml 17cargo test --manifest-path ./embassy-boot/Cargo.toml
16cargo test --manifest-path ./embassy-boot/boot/Cargo.toml --features ed25519-dalek 18cargo test --manifest-path ./embassy-boot/Cargo.toml --features ed25519-dalek
17cargo test --manifest-path ./embassy-boot/boot/Cargo.toml --features ed25519-salty 19cargo test --manifest-path ./embassy-boot/Cargo.toml --features ed25519-salty
18 20
19cargo test --manifest-path ./embassy-nrf/Cargo.toml --no-default-features --features nrf52840,time-driver-rtc1,gpiote 21cargo test --manifest-path ./embassy-nrf/Cargo.toml --no-default-features --features nrf52840,time-driver-rtc1,gpiote
20 22