aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/test-builds.yml
blob: 7549e3defcbb4b46eaba6be5dd627b1babff84be (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#
# test-builds.yml
# Do test builds to catch compile errors
#

name: CI

on:
  pull_request:
    branches:
    - bugfix-2.0.x
    paths-ignore:
    - config/**
    - data/**
    - docs/**
    - '**/*.md'
  push:
    branches:
    - bugfix-2.0.x
    paths-ignore:
    - config/**
    - data/**
    - docs/**
    - '**/*.md'

jobs:
  test_builds:
    name: Run All Tests
    if: github.repository == 'MarlinFirmware/Marlin'

    runs-on: ubuntu-latest

    strategy:
      matrix:
        test-platform:
        # Base Environments

        - DUE
        - DUE_archim
        - esp32
        - linux_native
        - mega2560
        - at90usb1286_dfu
        - teensy31
        - teensy35
        - teensy41
        - SAMD51_grandcentral_m4

        # Extended AVR Environments

        - FYSETC_F6
        - mega1280
        - rambo
        - sanguino1284p
        - sanguino644p

        # STM32F1 (Maple) Environments

        - STM32F103RC_btt
        - STM32F103RC_btt_USB
        - STM32F103RE_btt
        - STM32F103RE_btt_USB
        - STM32F103RC_fysetc
        - STM32F103RC_meeb
        - jgaurora_a5s_a1
        - STM32F103VE_longer
        - mks_robin
        - mks_robin_lite
        - mks_robin_pro
        - STM32F103RET6_creality
        - mks_robin_nano35

        # STM32 (ST) Environments

        - STM32F407VE_black
        - STM32F401VE_STEVAL
        - BIGTREE_BTT002
        - BIGTREE_SKR_PRO
        - BIGTREE_GTR_V1_0
        - mks_robin_stm32
        - ARMED
        - FYSETC_S6
        - STM32F070CB_malyan
        - STM32F070RB_malyan
        - malyan_M300
        - FLYF407ZG
        - rumba32
        - LERDGEX
        - mks_robin_nano35_stm32
        - NUCLEO_F767ZI
        - REMRAM_V1

        # Put lengthy tests last

        - LPC1768
        - LPC1769

        # Non-working environment tests
        #- at90usb1286_cdc
        #- STM32F103CB_malyan
        #- mks_robin_mini

    steps:

    - name: Select Python 3.7
      uses: actions/setup-python@v1
      with:
        python-version: '3.7' # Version range or exact version of a Python version to use, using semvers version range syntax.
        architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified

    - name: Install PlatformIO
      run: |
        pip install -U https://github.com/platformio/platformio-core/archive/develop.zip
        platformio update

    - name: Check out the PR
      uses: actions/checkout@v2

    - name: Run ${{ matrix.test-platform }} Tests
      run: |
        make tests-single-ci TEST_TARGET=${{ matrix.test-platform }}