11
11
12
12
jobs :
13
13
build :
14
+ strategy :
15
+ # Project setup dominates vs. actual per-configuration build times, so
16
+ # just run twister for all boards instead of splitting into separate jobs.
17
+ # matrix: board:
18
+ # [
19
+ # esp_wrover_kit/esp32/procpu,
20
+ # esp32s3_devkitm/esp32s3/procpu,
21
+ # esp32s3_devkitc/esp32s3/procpu,
22
+ # esp32c3_devkitm,
23
+ # ]
14
24
runs-on : ubuntu-latest
15
- container :
16
- # Zephyr toolchain from here:
17
- # https://github.com/zephyrproject-rtos/docker-image/pkgs/container/ci
18
- image : ghcr.io/zephyrproject-rtos/ci:v0.26.6
19
- env :
20
- # Tell cmake where to find the zephyr sdk
21
- CMAKE_PREFIX_PATH : /opt/toolchains
22
-
23
25
steps :
24
- - name : Checkout code
26
+ - name : ☑️ Checkout
25
27
uses : actions/checkout@v4
26
28
with :
27
- path : zephyr-workspace/zephyr- esp32-example
29
+ path : zephyr-esp32-example
28
30
29
- - name : ♻️ Initialize Zephyr Workspace
30
- # Set up the Zephyr workspace and install the Python dependencies
31
- run : |
32
- cd zephyr-workspace
33
- rm -rf .west
34
- west init -l zephyr-esp32-example
35
- west update --narrow -o=--depth=1
36
- west blobs fetch hal_espressif
31
+ - name : Set up Python
32
+ uses : actions/setup-python@v4
33
+ with :
34
+ python-version : 3.11
35
+
36
+ - name : ♻️ Setup Zephyr project
37
+ uses : zephyrproject-rtos/action-zephyr-setup@v1
38
+ with :
39
+ app-path : zephyr-esp32-example
40
+ toolchains : xtensa-espressif_esp32s3_zephyr-elf riscv64-zephyr-elf
37
41
38
42
- name : 💾 Cache ~/.cache/ccache
39
43
uses : actions/cache@v3
@@ -43,27 +47,20 @@ jobs:
43
47
restore-keys : |
44
48
ccache-v1-${{ runner.os }}-
45
49
46
- - name : 🔨 Build Project
50
+ - name : 🌪️ Run twister
47
51
run : |
48
- cd zephyr-workspace
49
- ccache -z
50
-
51
- west build --sysbuild \
52
- --pristine=always \
53
- --board=esp32s3_devkitm/esp32s3/procpu zephyr-esp32-example \
54
- -- \
55
- -DCONFIG_MEMFAULT_PROJECT_KEY=\"1234\"
56
-
57
- west build --sysbuild \
58
- --pristine=always \
59
- --board=esp32s3_devkitc/esp32s3/procpu zephyr-esp32-example \
60
- -- \
61
- -DCONFIG_MEMFAULT_PROJECT_KEY=\"1234\"
52
+ # not part of action-zephyr-setup
53
+ west blobs fetch hal_espressif
62
54
63
- west build --sysbuild \
64
- --pristine=always \
65
- --board=esp32c3_devkitm zephyr-esp32-example \
66
- -- \
67
- -DCONFIG_MEMFAULT_PROJECT_KEY=\"1234\"
55
+ zephyr/scripts/twister
56
+ --testsuite-root zephyr-esp32-example
68
57
69
58
ccache -sv
59
+
60
+ - name : 🎨 Upload artifacts
61
+ uses : actions/upload-artifact@v3
62
+ if : ${{ always() }}
63
+ with :
64
+ name : twister-artifacts
65
+ path : |
66
+ twister-out/**/*.log
0 commit comments