summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorCYFS <[email protected]>2026-04-17 15:32:45 +0800
committerRbb666 <[email protected]>2026-04-19 20:37:38 +0800
commitae5b5ed1821b7a9ddcafa024856252fd724634f4 (patch)
tree29098fdbb3efbb2dfbaeafb6ac8058de940fd1af /.github
parentb0e55a46a1d58cadde8f2bbd4afe67a95cdc9368 (diff)
[action][utest]:Expand kernel auto-run matrix and sync test configs
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/utest_auto_run.yml98
1 files changed, 76 insertions, 22 deletions
diff --git a/.github/workflows/utest_auto_run.yml b/.github/workflows/utest_auto_run.yml
index df56f699d5..f614652d23 100644
--- a/.github/workflows/utest_auto_run.yml
+++ b/.github/workflows/utest_auto_run.yml
@@ -59,14 +59,51 @@ jobs:
- "default.cfg"
include:
- # only run on qemu-vexpress-a9
+ # run kernel utest set on all QEMU boards
- platform: { UTEST: "A9", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"" }
config_file: "kernel/kernel_basic.cfg"
- platform: { UTEST: "A9", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"" }
config_file: "kernel/ipc.cfg"
- platform: { UTEST: "A9", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"" }
config_file: "kernel/mem.cfg"
-
+ - platform: { UTEST: "A9-rtsmart", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/kernel_basic.cfg"
+ - platform: { UTEST: "A9-rtsmart", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/ipc.cfg"
+ - platform: { UTEST: "A9-rtsmart", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "A9-smp", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"smp" }
+ config_file: "kernel/kernel_basic.cfg"
+ - platform: { UTEST: "A9-smp", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"smp" }
+ config_file: "kernel/ipc.cfg"
+ - platform: { UTEST: "A9-smp", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"smp" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "RISCV", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "standard", "SMP_RUN":"" }
+ config_file: "kernel/kernel_basic.cfg"
+ - platform: { UTEST: "RISCV", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "standard", "SMP_RUN":"" }
+ config_file: "kernel/ipc.cfg"
+ - platform: { UTEST: "RISCV", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "standard", "SMP_RUN":"" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "RISCV-rtsmart", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/kernel_basic.cfg"
+ - platform: { UTEST: "RISCV-rtsmart", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/ipc.cfg"
+ - platform: { UTEST: "RISCV-rtsmart", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "XUANTIE-rtsmart", RTT_BSP: "bsp/xuantie/virt64/c906", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "sd.bin", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/kernel_basic.cfg"
+ - platform: { UTEST: "XUANTIE-rtsmart", RTT_BSP: "bsp/xuantie/virt64/c906", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "sd.bin", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/ipc.cfg"
+ - platform: { UTEST: "XUANTIE-rtsmart", RTT_BSP: "bsp/xuantie/virt64/c906", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "sd.bin", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "RISCV-smp", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "standard", "SMP_RUN":"smp" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "AARCH64", RTT_BSP: "bsp/qemu-virt64-aarch64", QEMU_ARCH: "aarch64", QEMU_MACHINE: "virt", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "AARCH64-rtsmart", RTT_BSP: "bsp/qemu-virt64-aarch64", QEMU_ARCH: "aarch64", QEMU_MACHINE: "virt", SD_FILE: "sd.bin", KERNEL: "rtsmart", "SMP_RUN":"" }
+ config_file: "kernel/mem.cfg"
+ - platform: { UTEST: "AARCH64-smp", RTT_BSP: "bsp/qemu-virt64-aarch64", QEMU_ARCH: "aarch64", QEMU_MACHINE: "virt", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"smp" }
+ config_file: "kernel/mem.cfg"
- platform: { UTEST: "A9", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "arm", QEMU_MACHINE: "vexpress-a9", SD_FILE: "sd.bin", KERNEL: "standard", "SMP_RUN":"" }
config_file: "kernel/atomic_c11.cfg"
- platform: { UTEST: "RISCV", RTT_BSP: "bsp/qemu-virt64-riscv", QEMU_ARCH: "riscv64", QEMU_MACHINE: "virt", SD_FILE: "None", KERNEL: "standard", "SMP_RUN":"" }
@@ -273,38 +310,55 @@ jobs:
- name: Monitor qemu log
if: ${{ env.TOOLCHAIN_INSTALLED != '' && success() }}
+ timeout-minutes: 20
run: |
FAILURE_DETECTED=false
ERROR_LOGS=""
+ export FAILURE_DETECTED ERROR_LOGS
echo "=========================================================================================="
echo " || || "
echo " || Start automatic running of Utest || "
echo " VV VV "
echo "=========================================================================================="
- tail -n 0 -f qemu_output_$TEST_QEMU_ARCH.log | while read line; do
- echo $line
- if [[ "$line" == *"[ FAILED ] [ result ]"* ]]; then
- ERROR_LOGS="$ERROR_LOGS$line"$'\n'
- FAILURE_DETECTED=true
- fi
-
- if [[ "$line" == *"[==========] [ utest ] finished"* ]]; then
- if $FAILURE_DETECTED; then
+ timeout 20m bash -c '
+ tail -n 0 -f "qemu_output_${TEST_QEMU_ARCH}.log" | while IFS= read -r line; do
+ echo "$line"
+ if [[ "$line" == *"[ FAILED ] [ result ]"* ]]; then
+ ERROR_LOGS="${ERROR_LOGS}${line}"$'\''\n'\''
+ FAILURE_DETECTED=true
+ fi
+
+ if [[ "$line" == *"[==========] [ utest ] finished"* ]]; then
+ if [[ "$FAILURE_DETECTED" == "true" ]]; then
+ echo "=========================================================================================="
+ echo " || || "
+ echo " || Error: Failures detected in logs. Below are the failure details... || "
+ echo " VV VV "
+ echo "=========================================================================================="
+ echo "$ERROR_LOGS"
+ exit 1
+ fi
echo "=========================================================================================="
- echo " || || "
- echo " || Error: Failures detected in logs. Below are the failure details... || "
- echo " VV VV "
+ echo " Successed: Utest run completed. Exiting log monitoring "
echo "=========================================================================================="
- echo "$ERROR_LOGS"
- exit 1
+ break
fi
- echo "=========================================================================================="
- echo " Successed: Utest run completed. Exiting log monitoring "
- echo "=========================================================================================="
- break
- fi
- done
+ done
+ '
+ monitor_status=$?
+
+ if [[ $monitor_status -eq 124 ]]; then
+ echo "=========================================================================================="
+ echo " || || "
+ echo " || Error: Utest run timed out after 20 minutes. Exiting... || "
+ echo " VV VV "
+ echo "=========================================================================================="
+ pkill -f "qemu-system-${TEST_QEMU_ARCH}.*${TEST_BSP_ROOT}/rtthread.bin" || true
+ exit 1
+ fi
+
+ exit $monitor_status
# # Post CI status to PR comment
# post-ci-status:
# needs: test