@@ -56,95 +56,97 @@ permissions:
5656
5757jobs :
5858 smoke_test :
59- runs-on : ubuntu-latest
59+ runs-on : zephyr-runner
60+
61+ container :
62+ # For Zephyr 3.7 LTS, use the v0.26-branch or the latest v0.26.x release Docker image.
63+ image : ghcr.io/zephyrproject-rtos/ci:v0.26-branch
64+ options : --user root
65+
6066 steps :
67+ # https://docs.zephyrproject.org/latest/develop/application/index.html#zephyr-workspace-application
68+ # zephyrproject/
69+ # ├─── .west/
70+ # │ └─── config
71+ # ├─── zephyr/
72+ # ├─── bootloader/
73+ # ├─── modules/
74+ # ├─── tools/
75+ # ├─── <vendor/private-repositories>/
76+ # └─── applications/ <- wasm-micro-runtime HERE
77+ # └── app/
6178 - name : Checkout code
6279 uses : actions/checkout@v3
63-
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
80+ with :
81+ path : application
82+
83+ - name : Setup Zephyr project
84+ uses : zephyrproject-rtos/action-zephyr-setup@v1
85+ with :
86+ app-path : application
87+ sdk-version : ${{ env.ZEPHYR_SDK_VERSION }}
88+
89+ - name : DBG#1
9590 shell : bash
9691 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
100-
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
123-
124- - name : Build a sample application(simple)
125- run : |
126- pushd product-mini/platforms/zephyr/simple
127- west build . -b qemu_arc/qemu_arc_hs -p always -- -DWAMR_BUILD_TARGET=ARC
128- popd
129-
130- # west build -t run will fork several processes, which will cause the job to hang.
131- # run in the background and kill it after 5 seconds
132- .github/scripts/run_qemu_arc.sh \
133- /opt/zephyr-sdk-${{ env.ZEPHYR_SDK_VERSION }} \
134- product-mini/platforms/zephyr/simple/build/zephyr/zephyr.elf &
135- sleep 5
136- pkill qemu-system-arc
137-
138- - name : Build a sample application(user-mode)
139- run : |
140- pushd product-mini/platforms/zephyr/user-mode
141- west build . -b qemu_arc/qemu_arc_hs -p always -- -DWAMR_BUILD_TARGET=ARC
142- popd
143-
144- # west build -t run will fork several processes, which will cause the job to hang.
145- # run in the background and kill it after 5 seconds
146- .github/scripts/run_qemu_arc.sh \
147- /opt/zephyr-sdk-${{ env.ZEPHYR_SDK_VERSION }} \
148- product-mini/platforms/zephyr/user-mode/build/zephyr/zephyr.elf &
149- sleep 5
150- pkill qemu-system-arc
92+ pwd
93+ ls -l .
94+ tree -d .
95+
96+ # - name: Generate a minimum Zephyr project
97+ # shell: bash
98+ # run: |
99+ # mkdir -p ./zephyrproject/modules/zephyr
100+ # mkdir -p ./zephyrproject/smoke-test
101+ # cp product-mini/platforms/zephyr/simple/west_lite.yml ./zephyrproject/smoke-test/west.yml
102+
103+ # - name: Initialize west
104+ # shell: bash
105+ # run: |
106+ # west init -l .
107+ # working-directory: ./zephyrproject/smoke-test
108+
109+ # - name: Update west to fetch the Zephyr project
110+ # shell: bash
111+ # run: west update --stats
112+ # working-directory: ./zephyrproject
113+
114+ # - name: Export Zephyr environment
115+ # shell: bash
116+ # run: |
117+ # west zephyr-export
118+ # pip3 install -r ./scripts/requirements.txt
119+ # working-directory: ./zephyrproject/modules/zephyr
120+
121+ # - name: Set Environment Variables
122+ # shell: bash
123+ # run: |
124+ # echo "ZEPHYR_BASE=$(realpath ./zephyrproject/modules/zephyr)" >> $GITHUB_ENV
125+
126+ # - name: Build a sample application(simple)
127+ # run: |
128+ # pushd product-mini/platforms/zephyr/simple
129+ # west build . -b qemu_arc/qemu_arc_hs -p always -- -DWAMR_BUILD_TARGET=ARC
130+ # popd
131+
132+ # # west build -t run will fork several processes, which will cause the job to hang.
133+ # # run in the background and kill it after 5 seconds
134+ # .github/scripts/run_qemu_arc.sh \
135+ # /opt/zephyr-sdk-${{ env.ZEPHYR_SDK_VERSION }} \
136+ # product-mini/platforms/zephyr/simple/build/zephyr/zephyr.elf &
137+ # sleep 5
138+ # pkill qemu-system-arc
139+
140+ # - name: Build a sample application(user-mode)
141+ # run: |
142+ # pushd product-mini/platforms/zephyr/user-mode
143+ # west build . -b qemu_arc/qemu_arc_hs -p always -- -DWAMR_BUILD_TARGET=ARC
144+ # popd
145+
146+ # # west build -t run will fork several processes, which will cause the job to hang.
147+ # # run in the background and kill it after 5 seconds
148+ # .github/scripts/run_qemu_arc.sh \
149+ # /opt/zephyr-sdk-${{ env.ZEPHYR_SDK_VERSION }} \
150+ # product-mini/platforms/zephyr/user-mode/build/zephyr/zephyr.elf &
151+ # sleep 5
152+ # pkill qemu-system-arc
0 commit comments