action.yml 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  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. - {RTT_BSP: "etherkit_ethercat_cherryecat"}
  75. steps:
  76. - uses: actions/checkout@v2
  77. - name: Set up Python
  78. uses: actions/setup-python@master
  79. with:
  80. python-version: 3.8
  81. - name: Install Arm ToolChains
  82. if: ${{ success() }}
  83. shell: bash
  84. run: |
  85. 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
  86. sudo tar -xf arm-gnu-toolchain-13.2.rel1-x86_64-arm-none-eabi.tar.xz -C /opt
  87. /opt/arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi/bin/arm-none-eabi-gcc --version
  88. echo "RTT_EXEC_PATH=/opt/arm-gnu-toolchain-13.2.Rel1-x86_64-arm-none-eabi/bin" >> $GITHUB_ENV
  89. - name: Install Tools
  90. if: ${{ success() }}
  91. shell: bash
  92. run: |
  93. sudo apt-get update
  94. sudo apt-get -qq install gcc-multilib libsdl2-dev scons
  95. echo "RTT_ROOT=${{ github.workspace }}" >> $GITHUB_ENV
  96. echo "RTT_CC=gcc" >> $GITHUB_ENV
  97. - name: Compile ${{ matrix.legs.RTT_BSP }}
  98. if: ${{ success() }}
  99. shell: bash
  100. env:
  101. RTT_BSP: ${{ matrix.legs.RTT_BSP }}
  102. run: |
  103. cd projects
  104. scons -C $RTT_BSP