test-builds.yml 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. #
  2. # test-builds.yml
  3. # Do test builds to catch compile errors
  4. #
  5. name: CI
  6. on:
  7. pull_request:
  8. branches:
  9. - bugfix-2.1.x
  10. - 2.1.x
  11. paths-ignore:
  12. - config/**
  13. - data/**
  14. - docs/**
  15. - '**/*.md'
  16. push:
  17. branches:
  18. - bugfix-2.1.x
  19. - 2.1.x
  20. paths-ignore:
  21. - config/**
  22. - data/**
  23. - docs/**
  24. - '**/*.md'
  25. jobs:
  26. test_builds:
  27. name: Run All Tests
  28. if: github.repository == 'MarlinFirmware/Marlin'
  29. runs-on: ubuntu-latest
  30. strategy:
  31. matrix:
  32. test-platform:
  33. # Native
  34. - linux_native
  35. # AVR
  36. - mega2560
  37. - mega1280
  38. - at90usb1286_dfu
  39. # AVR Extended
  40. - FYSETC_F6
  41. - melzi_optiboot
  42. - rambo
  43. - sanguino1284p
  44. - sanguino644p
  45. # SAM3X8E
  46. - DUE
  47. - DUE_archim
  48. # SAMD21
  49. - SAMD51_grandcentral_m4
  50. - SAMD21_minitronics20
  51. # ESP32
  52. - esp32
  53. - mks_tinybee
  54. # Teensy 2
  55. #- at90usb1286_cdc
  56. # Teensy MK20DX256
  57. - teensy31
  58. # Teensy MK64FX512, MK66FX1M0
  59. - teensy35
  60. # Teensy IMXRT1062DVx6A
  61. - teensy41
  62. # STM32F0
  63. - malyan_M300
  64. - STM32F070CB_malyan
  65. - STM32F070RB_malyan
  66. # STM32F1
  67. - chitu_f103
  68. - mks_robin
  69. - mks_robin_nano_v1v2
  70. - PANDA_PI_V29
  71. - STM32F103RC_btt
  72. - STM32F103RC_fysetc
  73. - STM32F103RE_btt
  74. - STM32F103RE_btt_USB
  75. - STM32F103RE_creality
  76. - STM32F103VE_longer
  77. #- mks_robin_mini
  78. #- mks_robin_nano_v1_3_f4_usbmod
  79. #- mks_robin_nano_v1v2_usbmod
  80. #- STM32F103CB_malyan
  81. #- STM32F103RC_btt_USB
  82. #- STM32F103RE
  83. # STM32F4
  84. - ARMED
  85. - BIGTREE_BTT002
  86. - BIGTREE_GTR_V1_0
  87. - BIGTREE_SKR_PRO
  88. - FLYF407ZG
  89. - FYSETC_S6
  90. - LERDGEK
  91. - LERDGEX
  92. - mks_robin_pro2
  93. - Opulo_Lumen_REV3
  94. - rumba32
  95. - STM32F401RC_creality
  96. - STM32F407VE_black
  97. - I3DBEEZ9_V1
  98. # STM32F7
  99. - NUCLEO_F767ZI
  100. - REMRAM_V1
  101. # STM32H7
  102. - BTT_SKR_SE_BX
  103. - STM32H743VI_btt
  104. # STM32F1 (Maple)
  105. - jgaurora_a5s_a1_maple
  106. - mks_robin_lite_maple
  107. - mks_robin_pro_maple
  108. - STM32F103RC_btt_USB_maple
  109. - STM32F103RC_fysetc_maple
  110. - STM32F103RC_meeb_maple
  111. - STM32F103VE_longer_maple
  112. - STM32F103VE_ZM3E4V2_USB_maple
  113. #- mks_robin_maple
  114. #- mks_robin_nano_v1v2_maple
  115. #- STM32F103RC_btt_maple
  116. #- STM32F103RE_creality_maple
  117. # STM32G0
  118. - STM32G0B1RE_btt
  119. # HC32
  120. - HC32F460C_aquila_101
  121. # LPC176x - Lengthy tests
  122. - LPC1768
  123. - LPC1769
  124. steps:
  125. - name: Check out the PR
  126. uses: actions/checkout@v4
  127. - name: Cache pip
  128. uses: actions/cache@v4
  129. with:
  130. path: ~/.cache/pip
  131. key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
  132. restore-keys: |
  133. ${{ runner.os }}-pip-
  134. - name: Cache PlatformIO
  135. uses: actions/cache@v4
  136. with:
  137. path: ~/.platformio
  138. key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}
  139. - name: Select Python 3.9
  140. uses: actions/setup-python@v5
  141. with:
  142. python-version: '3.9'
  143. architecture: 'x64'
  144. - name: Install PlatformIO
  145. run: |
  146. pip install -U platformio
  147. pio upgrade --dev
  148. pio pkg update --global
  149. - name: Run ${{ matrix.test-platform }} Tests
  150. run: |
  151. make tests-single-ci TEST_TARGET=${{ matrix.test-platform }}