@@ -56,72 +56,47 @@ permissions:
56
56
57
57
jobs :
58
58
smoke_test :
59
- runs-on : ubuntu-latest
59
+ runs-on : ubuntu-22.04
60
+ container :
61
+ # For Zephyr 3.7 LTS, use the v0.26-branch or the latest v0.26.x release Docker image.
62
+ # ci require a larger runner to avoid "no space left on device"
63
+ image : ghcr.io/zephyrproject-rtos/ci-base:v0.26-branch
64
+ options : --user root
65
+
60
66
steps :
67
+ # https://docs.zephyrproject.org/latest/develop/application/index.html#zephyr-workspace-application
68
+ # zephyrproject/ --> CI ROOT
69
+ # ├─── .west/
70
+ # │ └─── config
71
+ # ├─── bootloader/
72
+ # ├─── zephyr/ --> Zephyr source code
73
+ # ├─── modules/
74
+ # │ |─── wasm-micro-runtime --> WAMR source code
75
+ # ├─── tools/
76
+ # ├─── vendor/
77
+ # └─── application/ --> DUMMY. keep west_lite.yml here
78
+
61
79
- name : Checkout code
62
80
uses : actions/checkout@v3
81
+ with :
82
+ path : modules/wasm-micro-runtime
63
83
64
- - name : Install dependencies for Zephyr
65
- shell : bash
66
- run : |
67
- sudo apt-get update
68
- sudo apt-get install -y --no-install-recommends git cmake ninja-build gperf \
69
- ccache dfu-util device-tree-compiler wget \
70
- python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \
71
- make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1
72
- sudo apt-get clean -y
73
-
74
- - name : Download Zephyr SDK
75
- shell : bash
76
- run : |
77
- cd /opt
78
- sudo wget --progress=dot:giga https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v${{ env.ZEPHYR_SDK_VERSION }}/zephyr-sdk-${{ env.ZEPHYR_SDK_VERSION }}_linux-x86_64.tar.xz
79
- sudo wget --progress=dot:giga -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v${{ env.ZEPHYR_SDK_VERSION }}/sha256.sum | shasum --check --ignore-missing
80
- sudo tar xf zephyr-sdk-${{ env.ZEPHYR_SDK_VERSION }}_linux-x86_64.tar.xz
81
- working-directory : /opt
82
-
83
- - name : Install Zephyr SDK. host tools and Zephyr SDK CMake package
84
- shell : bash
85
- run : |
86
- sudo ./setup.sh -h -c
87
- working-directory : /opt/zephyr-sdk-${{ env.ZEPHYR_SDK_VERSION }}
88
-
89
- - name : Setup Zephyr
90
- shell : bash
91
- run : |
92
- pip3 install west
93
-
94
- - name : Generate a minimum Zephyr project
84
+ - name : Prepare Zephyr environment
95
85
shell : bash
96
86
run : |
97
- mkdir -p ./zephyrproject/modules/zephyr
98
- mkdir -p ./zephyrproject/smoke-test
99
- cp product-mini/platforms/zephyr/simple/west_lite.yml ./zephyrproject/smoke-test/west.yml
87
+ mkdir -p dummy
88
+ cp modules/wasm-micro-runtime/product-mini/platforms/zephyr/simple/west_lite.yml dummy/west_lite.yml
100
89
101
- - name : Initialize west
102
- shell : bash
103
- run : |
104
- west init -l .
105
- working-directory : ./zephyrproject/smoke-test
106
-
107
- - name : Update west to fetch the Zephyr project
108
- shell : bash
109
- run : west update --stats
110
- working-directory : ./zephyrproject
111
-
112
- - name : Export Zephyr environment
113
- shell : bash
114
- run : |
115
- west zephyr-export
116
- pip3 install -r ./scripts/requirements.txt
117
- working-directory : ./zephyrproject/modules/zephyr
118
-
119
- - name : Set Environment Variables
120
- shell : bash
121
- run : |
122
- echo "ZEPHYR_BASE=$(realpath ./zephyrproject/modules/zephyr)" >> $GITHUB_ENV
90
+ - name : Setup Zephyr project
91
+ uses : zephyrproject-rtos/action-zephyr-setup@v1
92
+ with :
93
+ app-path : dummy
94
+ manifest-file-name : west_lite.yml
95
+ sdk-version : ${{ env.ZEPHYR_SDK_VERSION }}
96
+ toolchains : arc-zephyr-elf:arc64-zephyr-elf
123
97
124
98
- name : Build a sample application(simple)
99
+ shell : bash
125
100
run : |
126
101
pushd product-mini/platforms/zephyr/simple
127
102
west build . -b qemu_arc/qemu_arc_hs -p always -- -DWAMR_BUILD_TARGET=ARC
@@ -134,8 +109,10 @@ jobs:
134
109
product-mini/platforms/zephyr/simple/build/zephyr/zephyr.elf &
135
110
sleep 5
136
111
pkill qemu-system-arc
112
+ working-directory : modules/wasm-micro-runtime
137
113
138
114
- name : Build a sample application(user-mode)
115
+ shell : bash
139
116
run : |
140
117
pushd product-mini/platforms/zephyr/user-mode
141
118
west build . -b qemu_arc/qemu_arc_hs -p always -- -DWAMR_BUILD_TARGET=ARC
@@ -148,3 +125,4 @@ jobs:
148
125
product-mini/platforms/zephyr/user-mode/build/zephyr/zephyr.elf &
149
126
sleep 5
150
127
pkill qemu-system-arc
128
+ working-directory : modules/wasm-micro-runtime
0 commit comments