action.yml 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. name: RZN2L-EtherKit
  2. # Controls when the action will run. Triggers the workflow on push or pull request
  3. # events but only for the master branch
  4. on:
  5. # Runs at 16:00 UTC (BeiJing 00:00) on the 1st of every month
  6. schedule:
  7. - cron: '0 16 1 * *'
  8. push:
  9. branches:
  10. - master
  11. paths-ignore:
  12. - documentation/**
  13. - '**/README.md'
  14. # - '**/README_ZH.md'
  15. pull_request:
  16. branches:
  17. - master
  18. paths-ignore:
  19. - documentation/**
  20. - '**/README.md'
  21. # - '**/README_ZH.md'
  22. env:
  23. RTT_TOOL_CHAIN: "sourcery-arm"
  24. jobs:
  25. check:
  26. runs-on: ubuntu-latest
  27. name: check-yaml-format
  28. if: github.repository_owner == 'RT-Thread-Studio'
  29. steps:
  30. - uses: actions/checkout@v2
  31. - name: Set up Python
  32. uses: actions/setup-python@master
  33. with:
  34. python-version: 3.8
  35. - name: Check yaml
  36. if: ${{ success() }}
  37. shell: bash
  38. run: |
  39. pip install rt-thread-studio
  40. python -c "from rt_thread_studio import bsp_checker;bsp_path = '.';checker = bsp_checker.BspChecker(bsp_path);checker.check();"
  41. compile:
  42. needs: [check]
  43. runs-on: ubuntu-latest
  44. name: ${{ matrix.legs.RTT_BSP }}
  45. strategy:
  46. fail-fast: false
  47. matrix:
  48. legs:
  49. - {RTT_BSP: "template_project"}
  50. - {RTT_BSP: "etherkit_blink_led"}
  51. - {RTT_BSP: "etherkit_basic_key_irq"}
  52. - {RTT_BSP: "etherkit_basic_rtc"}
  53. - {RTT_BSP: "etherkit_driver_adc"}
  54. - {RTT_BSP: "etherkit_driver_i2c"}
  55. - {RTT_BSP: "etherkit_driver_spi"}
  56. - {RTT_BSP: "etherkit_driver_wdt"}
  57. - {RTT_BSP: "etherkit_driver_rs485"}
  58. - {RTT_BSP: "etherkit_driver_gpt"}
  59. - {RTT_BSP: "etherkit_driver_canfd"}
  60. - {RTT_BSP: "etherkit_driver_hyperram"}
  61. - {RTT_BSP: "etherkit_driver_ethernet"}
  62. - {RTT_BSP: "etherkit_component_netutils"}
  63. - {RTT_BSP: "etherkit_component_mqtt"}
  64. - {RTT_BSP: "etherkit_component_flash_fs"}
  65. - {RTT_BSP: "etherkit_modbus_tcpip"}
  66. - {RTT_BSP: "etherkit_modbus_uart"}
  67. - {RTT_BSP: "etherkit_usb_pmsc"}
  68. - {RTT_BSP: "etherkit_usb_pcdc"}
  69. - {RTT_BSP: "etherkit_ethercat_eoe"}
  70. - {RTT_BSP: "etherkit_ethercat_coe"}
  71. - {RTT_BSP: "etherkit_profinet_pnet"}
  72. - {RTT_BSP: "etherkit_ethernetip_opener"}
  73. - {RTT_BSP: "etherkit_factory"}
  74. steps:
  75. - uses: actions/checkout@v2
  76. - name: Set up Python
  77. uses: actions/setup-python@master
  78. with:
  79. python-version: 3.8
  80. - name: Install Arm ToolChains
  81. if: ${{ success() }}
  82. shell: bash
  83. run: |
  84. wget -c https://github.com/RT-Thread/toolchains-ci/releases/download/v1.8/arm-gnu-toolchain-13.2.rel1-x86_64-arm-none-eabi.tar.xz
  85. sudo tar -xf arm-gnu-toolchain-13.2.rel1-x86_64-arm-none-eabi.tar.xz -C /opt
  86. /opt/arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi/bin/arm-none-eabi-gcc --version
  87. echo "RTT_EXEC_PATH=/opt/arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi/bin" >> $GITHUB_ENV
  88. - name: Install Tools
  89. if: ${{ success() }}
  90. shell: bash
  91. run: |
  92. sudo apt-get update
  93. sudo apt-get -qq install gcc-multilib libsdl2-dev scons
  94. echo "RTT_ROOT=${{ github.workspace }}" >> $GITHUB_ENV
  95. echo "RTT_CC=gcc" >> $GITHUB_ENV
  96. - name: Compile ${{ matrix.legs.RTT_BSP }}
  97. if: ${{ success() }}
  98. shell: bash
  99. env:
  100. RTT_BSP: ${{ matrix.legs.RTT_BSP }}
  101. run: |
  102. cd projects
  103. scons -C $RTT_BSP