51 lines
1.9 KiB
YAML
51 lines
1.9 KiB
YAML
name: Test compiling project
|
|
|
|
on: [push]
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: gitea.tobiasmaier.me/tobimai/devcontainer-pio:latest
|
|
|
|
steps:
|
|
- name: Checkout Code
|
|
uses: actions/checkout@v2
|
|
- name: Run PlatformIO build for SPIFFS (same in both platforms, so only one build is necessary)
|
|
run: pio run --target buildfs -e ESP32_INA233
|
|
- name: Run PlatformIO Tests
|
|
run: pio test -e native
|
|
- name: Run PlatformIO build for INA233
|
|
run: pio run -e ESP32_INA233
|
|
- name: Run PlatformIO build for INA226
|
|
run: pio run -e ESP32_INA226
|
|
- name: Upload firmware binary for INA233
|
|
run: |
|
|
VERSION=$(sed -n 's/#define current_software_version Version{[[:space:]]*\([0-9]\+\),[[:space:]]*\([0-9]\+\),[[:space:]]*\([0-9]\+\)}/\1.\2.\3/p' src/global_data/defines.h)
|
|
echo "Extracted version: $VERSION"
|
|
|
|
curl -X PUT \
|
|
-H "Content-Type: application/octet-stream" \
|
|
--data-binary @.pio/build/ESP32_INA233/firmware.bin \
|
|
https://iot.tobiasmaier.me/firmware/waterlevel/INA233/${VERSION}
|
|
|
|
- name: Upload firmware binary for INA226
|
|
run: |
|
|
VERSION=$(sed -n 's/#define current_software_version Version{[[:space:]]*\([0-9]\+\),[[:space:]]*\([0-9]\+\),[[:space:]]*\([0-9]\+\)}/\1.\2.\3/p' src/global_data/defines.h)
|
|
echo "Extracted version: $VERSION"
|
|
|
|
curl -X PUT \
|
|
-H "Content-Type: application/octet-stream" \
|
|
--data-binary @.pio/build/ESP32_INA226/firmware.bin \
|
|
https://iot.tobiasmaier.me/firmware/waterlevel/INA226/${VERSION}
|
|
|
|
- name: Upload SPIFFS binary
|
|
run: |
|
|
VERSION=$(cat data/version)
|
|
echo "Extracted version: $VERSION"
|
|
|
|
curl -X PUT \
|
|
-H "Content-Type: application/octet-stream" \
|
|
--data-binary @.pio/build/ESP32_INA233/spiffs.bin \
|
|
https://iot.tobiasmaier.me/filesystem/waterlevel/generic/${VERSION}
|