|
12 | 12 | - ".github/workflows/compile-examples.yml" |
13 | 13 | - "examples/**" |
14 | 14 | - "src/**" |
15 | | - schedule: |
16 | | - # Run every Tuesday at 8 AM UTC to catch breakage caused by changes to external resources (libraries, platforms). |
17 | | - - cron: "0 8 * * TUE" |
18 | 15 | workflow_dispatch: |
19 | | - repository_dispatch: |
20 | 16 |
|
21 | 17 | jobs: |
22 | | - build: |
23 | | - name: ${{ matrix.board.fqbn }} |
24 | | - runs-on: ubuntu-latest |
25 | | - |
26 | | - env: |
27 | | - SKETCHES_REPORTS_PATH: sketches-reports |
28 | | - |
29 | | - strategy: |
30 | | - fail-fast: false |
31 | | - |
32 | | - matrix: |
33 | | - board: |
34 | | - - fqbn: arduino:samd:mkrwifi1010 |
35 | | - platforms: | |
36 | | - - name: arduino:samd |
37 | | - artifact-name-suffix: arduino-samd-mkrwifi1010 |
38 | | - - fqbn: arduino:samd:nano_33_iot |
39 | | - platforms: | |
40 | | - - name: arduino:samd |
41 | | - artifact-name-suffix: arduino-samd-nano_33_iot |
42 | | - - fqbn: arduino:megaavr:uno2018:mode=on |
43 | | - platforms: | |
44 | | - - name: arduino:megaavr |
45 | | - artifact-name-suffix: arduino-megaavr-uno2018 |
46 | | - - fqbn: arduino:mbed_nano:nano33ble |
47 | | - platforms: | |
48 | | - - name: arduino:mbed_nano |
49 | | - artifact-name-suffix: arduino-mbed_nano-nano33ble |
50 | | - - fqbn: arduino:mbed_nano:nanorp2040connect |
51 | | - platforms: | |
52 | | - - name: arduino:mbed_nano |
53 | | - artifact-name-suffix: arduino-mbed_nano-nanorp2040connect |
54 | | - - fqbn: arduino:renesas_uno:unor4wifi |
55 | | - platforms: | |
56 | | - - name: arduino:renesas_uno |
57 | | - artifact-name-suffix: arduino-renesas_uno-unor4wifi |
58 | | - |
59 | | - steps: |
60 | | - - name: Checkout repository |
61 | | - uses: actions/checkout@v4 |
62 | | - |
63 | | - - name: Compile examples |
64 | | - uses: arduino/compile-sketches@v1 |
65 | | - with: |
66 | | - github-token: ${{ secrets.GITHUB_TOKEN }} |
67 | | - fqbn: ${{ matrix.board.fqbn }} |
68 | | - platforms: ${{ matrix.board.platforms }} |
69 | | - libraries: | |
70 | | - # Install the library from the local path. |
71 | | - - source-path: ./ |
72 | | - sketch-paths: | |
73 | | - - examples |
74 | | - enable-deltas-report: true |
75 | | - sketches-report-path: ${{ env.SKETCHES_REPORTS_PATH }} |
76 | | - |
77 | | - - name: Save sketches report as workflow artifact |
78 | | - uses: actions/upload-artifact@v4 |
79 | | - with: |
80 | | - if-no-files-found: error |
81 | | - path: ${{ env.SKETCHES_REPORTS_PATH }} |
82 | | - name: sketches-report-${{ matrix.board.artifact-name-suffix }} |
83 | | - |
84 | | - build-for-esp32: |
85 | | - runs-on: ubuntu-latest |
86 | | - |
87 | | - strategy: |
88 | | - matrix: |
89 | | - fqbn: |
90 | | - - esp32:esp32:esp32 |
91 | | - - esp32:esp32:esp32s3 |
92 | | - - esp32:esp32:esp32c3 |
93 | | - # future bluetooth chips |
94 | | - #- esp32:esp32:esp32c2 |
95 | | - #- esp32:esp32:esp32c6 |
96 | | - #- esp32:esp32:esp32h2 |
97 | | - |
98 | | - steps: |
99 | | - - uses: actions/checkout@v4 |
100 | | - - uses: arduino/compile-sketches@v1 |
101 | | - with: |
102 | | - github-token: ${{ secrets.GITHUB_TOKEN }} |
103 | | - fqbn: ${{ matrix.fqbn }} |
104 | | - platforms: | |
105 | | - - name: esp32:esp32 |
106 | | - source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json |
107 | | - sketch-paths: | |
108 | | - - examples/Central/Scan |
109 | | - - examples/Central/PeripheralExplorer |
110 | | - - examples/Central/ScanCallback |
111 | | - - examples/Central/SensorTagButton |
112 | | - - examples/Peripheral/Advertising/EnhancedAdvertising |
113 | | - - examples/Peripheral/Advertising/RawDataAdvertising |
114 | | - cli-compile-flags: | |
115 | | - - --warnings="none" |
0 commit comments