action_utest.yml 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. name: AutoTestCI
  2. on: push
  3. jobs:
  4. test:
  5. runs-on: ubuntu-latest
  6. name: ${{ matrix.legs.UTEST }}
  7. strategy:
  8. fail-fast: false
  9. matrix:
  10. legs:
  11. - {UTEST: "kernel/ipc", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "vexpress-a9", CONFIG_FILE: "examples/utest/configs/utest_self/config.h"}
  12. - {UTEST: "components/utest", RTT_BSP: "bsp/qemu-vexpress-a9", QEMU_ARCH: "vexpress-a9", CONFIG_FILE: "examples/utest/configs/utest_self/config.h"}
  13. env:
  14. TEST_BSP_ROOT: ${{ matrix.legs.RTT_BSP }}
  15. TEST_CONFIG_FILE: ${{ matrix.legs.CONFIG_FILE }}
  16. steps:
  17. - uses: actions/checkout@v1
  18. - name: Prepare env
  19. run: |
  20. sudo apt-get update > /dev/null
  21. sudo apt-get -yqq install scons qemu-system-arm git
  22. wget -q https://github.com/RT-Thread/toolchains-ci/releases/download/arm-2017q2-v6/gcc-arm-none-eabi-6-2017-q2-update-linux.tar.bz2
  23. sudo tar xjf gcc-arm-none-eabi-6-2017-q2-update-linux.tar.bz2 -C /opt
  24. - name: Build bsp
  25. run: |
  26. export RTT_EXEC_PATH=/opt/gcc-arm-none-eabi-6-2017-q2-update/bin
  27. /opt/gcc-arm-none-eabi-6-2017-q2-update/bin/arm-none-eabi-gcc --version
  28. cp $TEST_CONFIG_FILE $TEST_BSP_ROOT/rtconfig.h
  29. scons -j$(nproc) -C $TEST_BSP_ROOT
  30. - name: Start test
  31. run: |
  32. git clone https://github.com/armink/UtestRunner.git
  33. pushd $TEST_BSP_ROOT
  34. dd if=/dev/zero of=sd.bin bs=1024 count=65536
  35. popd
  36. pushd UtestRunner
  37. python3 qemu_runner.py --elf ../$TEST_BSP_ROOT/rtthread.elf --sd ../$TEST_BSP_ROOT/sd.bin
  38. cat rtt_console.log
  39. popd