name: Test compiling project on: [push] jobs: test: runs-on: ubuntu-latest container: image: gitea.tobiasmaier.me/tobimai/devcontainer-pio:latest options: --user 1000:1000 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: which pio && id && 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}