Skip to content

PR Check All envs on Dispatch #6

PR Check All envs on Dispatch

PR Check All envs on Dispatch #6

Workflow file for this run

---
name: PR Check All envs on Dispatch
on:
workflow_dispatch:
inputs:
pr_number:
description: "Pull Request Number"
type: string
required: true
jobs:
compile_sketch:
name: Build ${{ matrix.board.name }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
board:
- {
name: "M5Cardputer",
env: "m5stack-cardputer",
partitions: { bootloader_addr: "0x0000" },
}
- {
name: "M5StickCPlus2",
env: "m5stack-cplus2",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "M5StickCPlus",
env: "m5stack-cplus1_1",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "M5StickCPlus_Launcher",
env: "LAUNCHER_m5stack-cplus1_1",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "Core2",
env: "m5stack-core2",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "Core16mb",
env: "m5stack-core16mb",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "Core4mb",
env: "m5stack-core4mb",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "CoreS3",
env: "m5stack-cores3",
partitions: { bootloader_addr: "0x0" },
}
- {
name: "ESP32-S3",
env: "esp32-s3-devkitc-1",
partitions: { bootloader_addr: "0x0" },
}
- {
name: "CYD-2432S028",
env: "CYD-2432S028",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "CYD-2USB",
env: "CYD-2USB",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "CYD-2432W328C",
env: "CYD-2432W328C",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "CYD-2432W328C(inv_colors)_and_CYD-2432S024C",
env: "CYD-2432W328C_2",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "CYD-2432S028_Launcher",
env: "LAUNCHER_CYD-2432S028",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "CYD-2USB_Launcher",
env: "LAUNCHER_CYD-2USB",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "CYD-2432W328C_Launcher",
env: "LAUNCHER_CYD-2432W328C",
partitions: { bootloader_addr: "0x1000" },
}
- {
name: "Lilygo_T-Embed_CC1101",
env: "lilygo-t-embed-cc1101",
partitions: { bootloader_addr: "0x0" },
}
- {
name: "Lilygo_T-Embed",
env: "lilygo-t-embed",
partitions: { bootloader_addr: "0x0" },
}
- {
name: "Lilygo_T-Deck",
env: "lilygo-t-deck",
partitions: { bootloader_addr: "0x0" },
}
- {
name: "Lilygo_T-Deck-Pro",
env: "lilygo-t-deck-pro",
partitions: { bootloader_addr: "0x0" },
}
- {
name: "Smoochiee-Board",
env: "smoochiee-board",
partitions: { bootloader_addr: "0x0" },
}
steps:
- uses: actions/checkout@v4
with:
ref: refs/pull/${{ github.event.inputs.pr_number }}/merge
- id: build
name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Cache pip
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Cache PlatformIO
uses: actions/cache@v4
with:
path: |
~/.platformio
key: Bruce-platformio-${{ hashFiles('**/platformio.ini') }}
restore-keys: Bruce-platformio-
- name: Restore PIO
uses: actions/cache/restore@v4
with:
path: |
${{ github.workspace }}/.pio
key: Bruce-pio-${{ matrix.board.env }}-${{ github.run_id }}-${{ github.run_attempt }}
restore-keys: |
Bruce-pio-${{ matrix.board.env }}-
- name: Install PlatformIO Core
run: |
pip install platformio
if [[ "${{ github.ref_type }}" == "tag" ]]; then
version=${{ github.ref_name }}
else
version="${GITHUB_SHA::7}"
fi
sed -i "s/-DBRUCE_VERSION=/-DBRUCE_VERSION='\"$version\"' ; /g" ./platformio.ini
sed -i "s/-DGIT_COMMIT_HASH='\"Homebrew\"'/\!echo '-DGIT_COMMIT_HASH=\\\\\\\\\"'\$\(git describe --always --dirty)'\\\\\\\\\"'/g" ./platformio.ini
cat ./platformio.ini
- name: Run Compile
run: |
platformio run -e ${{ matrix.board.env }}
- name: Cache PIO
uses: actions/cache/save@v4
with:
path: |
${{ github.workspace }}/.pio
key: Bruce-pio-${{ matrix.board.env }}-${{ github.run_id }}-${{ github.run_attempt }}
- name: Merge Files
run: |
pio run -e ${{ matrix.board.env }} -t build-firmware
- name: Upload ${{ matrix.board.name }}
uses: actions/upload-artifact@v4
with:
name: Bruce-${{ matrix.board.env }}
path: Bruce-*.bin
retention-days: 5
if-no-files-found: error