CI build of NX100i FW #59
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push] | |
jobs: | |
firmware: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Cache pip | |
uses: actions/cache@v2 | |
with: | |
path: ~/.cache/pip | |
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} | |
restore-keys: | | |
${{ runner.os }}-pip- | |
- name: Cache PlatformIO | |
uses: actions/cache@v2 | |
with: | |
path: ~/.platformio | |
key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }} | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
- name: Install PlatformIO | |
run: | | |
python -m pip install --upgrade pip | |
pip install --upgrade platformio | |
- name: Run PlatformIO | |
run: pio run -d Firmware/CoverUI_V2 | |
- name: Copy Artifacts | |
run: | | |
mkdir artifacts | |
cp Firmware/CoverUI_V2/.pio/build/default/firmware.elf ./artifacts/firmware.elf2 | |
cp Firmware/CoverUI_V2/.pio/build/default/firmware.uf2 ./artifacts/firmware.uf2 | |
cp Firmware/CoverUI_V2/.pio/build/test_mode/firmware.elf ./artifacts/firmware_test_mode.elf2 | |
cp Firmware/CoverUI_V2/.pio/build/test_mode/firmware.uf2 ./artifacts/firmwar_test_mode.uf2 | |
- name: Step 3 - Use the Upload Artifact GitHub Action | |
uses: actions/upload-artifact@v3 | |
with: | |
name: open-mower-pico-firmware | |
path: artifacts/ | |
firmware-stock: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cache/pip | |
~/.platformio/.cache | |
key: ${{ runner.os }}-pio | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: '3.9' | |
- name: Install PlatformIO Core | |
run: pip install --upgrade platformio | |
- name: Run PlatformIO | |
run: pio run -d Firmware/CoverUI --environment YF_C500_STM32 --environment YF_C500_STM32_RAIN --environment YF_C500_STM32_RAIN_HALL --environment YF_C500_STM32_HALL --environment YF_C500_GD32 --environment YF_C500_GD32_RAIN --environment YF_C500_GD32_RAIN_HALL --environment YF_C500_GD32_HALL --environment YF_RM-ECOW-V100_STM32 --environment YF_RM-ECOW-V100_STM32_STOP --environment YF_RM-EC3-V11_STM32 --environment YF_RM-EC3-V11_STM32_HALL --environment YF_RM-EC3-V11_STM32_HALL_STOP --environment YF_RM-EC3-V11_STM32_STOP --environment YF_SAXPRO_STM32 | |
- name: Copy Artifacts | |
run: | | |
mkdir artifacts/ | |
cp Firmware/CoverUI/.pio/build/YF_C500_STM32/firmware.bin ./artifacts/firmware_C500_STM32.bin | |
cp Firmware/CoverUI/.pio/build/YF_C500_STM32_RAIN/firmware.bin ./artifacts/firmware_C500_STM32_RAIN.bin | |
cp Firmware/CoverUI/.pio/build/YF_C500_STM32_RAIN_HALL/firmware.bin ./artifacts/firmware_C500_STM32_RAIN_HALL.bin | |
cp Firmware/CoverUI/.pio/build/YF_C500_STM32_HALL/firmware.bin ./artifacts/firmware_C500_STM32_HALL.bin | |
cp Firmware/CoverUI/.pio/build/YF_C500_GD32/firmware.bin ./artifacts/firmware_C500_GD32.bin | |
cp Firmware/CoverUI/.pio/build/YF_C500_GD32_RAIN/firmware.bin ./artifacts/firmware_C500_GD32_RAIN.bin | |
cp Firmware/CoverUI/.pio/build/YF_C500_GD32_RAIN_HALL/firmware.bin ./artifacts/firmware_C500_GD32_RAIN_HALL.bin | |
cp Firmware/CoverUI/.pio/build/YF_C500_GD32_HALL/firmware.bin ./artifacts/firmware_C500_GD32_HALL.bin | |
cp Firmware/CoverUI/.pio/build/YF_RM-ECOW-V100_STM32/firmware.bin ./artifacts/firmware_RM-ECOW-V100_STM32.bin | |
cp Firmware/CoverUI/.pio/build/YF_RM-ECOW-V100_STM32_STOP/firmware.bin ./artifacts/firmware_RM-ECOW-V100_STM32_STOP.bin | |
cp Firmware/CoverUI/.pio/build/YF_RM-EC3-V11_STM32/firmware.bin ./artifacts/firmware_RM-EC3-V11_STM32.bin | |
cp Firmware/CoverUI/.pio/build/YF_RM-EC3-V11_STM32_HALL/firmware.bin ./artifacts/firmware_RM-EC3-V11_STM32_HALL.bin | |
cp Firmware/CoverUI/.pio/build/YF_RM-EC3-V11_STM32_HALL_STOP/firmware.bin ./artifacts/firmware_RM-EC3-V11_STM32_HALL_STOP.bin | |
cp Firmware/CoverUI/.pio/build/YF_RM-EC3-V11_STM32_STOP/firmware.bin ./artifacts/firmware_RM-EC3-V11_STM32_STOP.bin | |
cp Firmware/CoverUI/.pio/build/YF_SAXPRO_STM32/firmware.bin ./artifacts/firmware_YF_SAXPRO_STM32.bin | |
- name: Step 3 - Use the Upload Artifact GitHub Action | |
uses: actions/upload-artifact@v3 | |
with: | |
name: open-mower-stock-firmware | |
path: artifacts/ | |
tagged-release: | |
runs-on: ubuntu-latest | |
if: github.ref_type == 'tag' && startsWith(github.ref_name, 'v') | |
needs: [firmware, firmware-stock] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: INTI-CMNB/KiBot@v2_k6 | |
with: | |
config: Hardware/CoverUI.kibot.yaml | |
board: Hardware/CoverUI.kicad_pcb | |
- name: 'Fix permissions on release/' | |
run: sudo chmod 0777 release | |
- uses: actions/download-artifact@v3 | |
with: | |
name: open-mower-pico-firmware | |
path: firmware | |
- name: Create firmware zip | |
run: zip -r release/firmware.zip firmware | |
- uses: actions/download-artifact@v3 | |
with: | |
name: open-mower-stock-firmware | |
path: firmware-stock | |
- name: Create firmware-stock zip | |
run: zip -r firmware-stock.zip firmware-stock | |
- uses: "marvinpinto/action-automatic-releases@latest" | |
with: | |
repo_token: "${{ secrets.GITHUB_TOKEN }}" | |
prerelease: false | |
files: release/* | |
- name: Deploy release | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: release | |
destination_dir: release | |
- name: Deploy release_navigator | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: release_navigator | |
destination_dir: release_navigator | |
keep_files: true | |
- name: Deploy release_navigator index | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: release_navigator | |
keep_files: true | |
pre-release-latest-firmware: | |
runs-on: ubuntu-latest | |
if: github.ref_type != 'tag' | |
needs: [firmware, firmware-stock] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/download-artifact@v3 | |
with: | |
name: open-mower-pico-firmware | |
path: firmware | |
- name: Create firmware zip | |
run: zip -r firmware.zip firmware | |
- uses: actions/download-artifact@v3 | |
with: | |
name: open-mower-stock-firmware | |
path: firmware-stock | |
- name: Create firmware-stock zip | |
run: zip -r firmware-stock.zip firmware-stock | |
- uses: "marvinpinto/action-automatic-releases@latest" | |
with: | |
repo_token: "${{ secrets.GITHUB_TOKEN }}" | |
title: "Latest Firmware" | |
automatic_release_tag: "latest" | |
prerelease: true | |
files: | | |
firmware.zip | |
firmware-stock.zip |