Skip to content

test: どのブランチでもPush時にテストが走るようにする #305 #571

test: どのブランチでもPush時にテストが走るようにする #305

test: どのブランチでもPush時にテストが走るようにする #305 #571

Workflow file for this run

# サポートしている各種マイコンボードのビルドを行う
#
# ビルドツールは以下の3つで、各種マイコンボードでビルドが通ることを確認する
# - Mbed CLI 1 (mbed)
# - Mbed CLI 2 (mbed-tools)
# - Arduino CLI (arduino-cli)
#
name: Build spirit
on:
push:
paths:
- "**/CMakeLists.txt"
- "**.h"
- "**.cpp"
- "**/build.yml"
- "!tests/**"
workflow_dispatch:
jobs:
build-cli-v1:
container:
image: ghcr.io/armmbed/mbed-os-env:master-latest
runs-on: ubuntu-latest
strategy:
matrix:
target: [NUCLEO_F303K8, LPC1768]
profile: [release, debug, develop]
steps:
- uses: actions/checkout@v4
with:
path: spirit
- name: build-mbed-cli
run: |
mbed new .
mbed deploy
cp spirit/.github/workflows/build-mbed/main.cpp .
mbed compile -t GCC_ARM -m ${{ matrix.target }} --profile ${{ matrix.profile }}
build-cli-v2:
container:
image: ghcr.io/armmbed/mbed-os-env:master-latest
runs-on: ubuntu-latest
strategy:
matrix:
target: [NUCLEO_F303K8, LPC1768]
profile: [release, debug, develop]
steps:
- uses: actions/checkout@v4
with:
path: spirit
- name: build-mbed-tools
run: |
mbed-tools new .
cp spirit/.github/workflows/build-mbed/main.cpp .
cp spirit/.github/workflows/build-mbed-tools/CMakeLists.txt .
mbed-tools deploy
mbed-tools compile -t GCC_ARM -m ${{ matrix.target }} --profile ${{ matrix.profile }}
build-arduino-cli:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
fqbn:
[
"esp32:esp32:esp32",
"STMicroelectronics:stm32:GenF3",
"STMicroelectronics:stm32:GenL0",
"arduino:mbed:pico",
"arduino:mbed:envie_m7",
"arduino:mbed:nano33ble",
]
steps:
- uses: actions/checkout@v4
- name: Install Arduino CLI
uses: arduino/setup-arduino-cli@v1
- name: Install platform
run: |
arduino-cli config init
- name: Install ESP32 package
if: matrix.fqbn == 'esp32:esp32:esp32'
run: |
arduino-cli config add board_manager.additional_urls https://dl.espressif.com/dl/package_esp32_index.json
arduino-cli core update-index
arduino-cli core install esp32:esp32
- name: Install STM32 package
if: startsWith(matrix.fqbn, 'STMicroelectronics:stm32')
run: |
arduino-cli config add board_manager.additional_urls https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
arduino-cli core update-index
arduino-cli core install STMicroelectronics:stm32
- name: Install Mbed package
if: startsWith(matrix.fqbn, 'arduino:mbed')
run: |
arduino-cli core update-index
arduino-cli core install arduino:mbed
- name: Compile sketch
run: |
arduino-cli compile --fqbn ${{ matrix.fqbn }} --library . --verbose .github/workflows/build-arduino-cli