mirror of
https://github.com/meshtastic/firmware.git
synced 2025-02-26 22:33:24 +00:00
70 lines
1.8 KiB
YAML
70 lines
1.8 KiB
YAML
![]() |
name: Build ESP32
|
||
|
|
||
|
on:
|
||
|
workflow_call:
|
||
|
inputs:
|
||
|
board:
|
||
|
required: true
|
||
|
type: string
|
||
|
|
||
|
jobs:
|
||
|
build-esp32:
|
||
|
runs-on: ubuntu-latest
|
||
|
steps:
|
||
|
- name: Setup Python
|
||
|
uses: actions/setup-python@v4
|
||
|
with:
|
||
|
python-version: 3.x
|
||
|
|
||
|
- name: Cache python libs
|
||
|
uses: actions/cache@v3
|
||
|
id: cache-pip # needed in if test
|
||
|
with:
|
||
|
path: ~/.cache/pip
|
||
|
key: ${{ runner.os }}-pip
|
||
|
|
||
|
- name: Upgrade python tools
|
||
|
run: |
|
||
|
python -m pip install --upgrade pip
|
||
|
pip install -U platformio adafruit-nrfutil
|
||
|
|
||
|
- name: Upgrade platformio
|
||
|
run: |
|
||
|
pio upgrade
|
||
|
|
||
|
- name: Pull web ui
|
||
|
uses: dsaltares/fetch-gh-release-asset@master
|
||
|
with:
|
||
|
repo: "meshtastic/web"
|
||
|
file: "build.tar"
|
||
|
target: "build.tar"
|
||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||
|
|
||
|
- name: Unpack web ui
|
||
|
run: |
|
||
|
tar -xf build.tar -C data/static
|
||
|
rm build.tar
|
||
|
|
||
|
- name: Build ESP32
|
||
|
run: bin/build-esp32.sh ${{ inputs.board }}
|
||
|
|
||
|
- name: Pull OTA Firmware
|
||
|
uses: dsaltares/fetch-gh-release-asset@master
|
||
|
with:
|
||
|
repo: "meshtastic/firmware-ota"
|
||
|
file: "firmware.bin"
|
||
|
target: "release/bleota.bin"
|
||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||
|
|
||
|
- name: Get release version string
|
||
|
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT
|
||
|
id: version
|
||
|
|
||
|
- name: Store binaries as an artifact
|
||
|
uses: actions/upload-artifact@v3
|
||
|
with:
|
||
|
name: firmware-${{ inputs.board }}-${{ steps.version.outputs.version }}.zip
|
||
|
path: |
|
||
|
release/*.bin
|
||
|
release/*.elf
|
||
|
retention-days: 30
|