fix: increase frame pool from 3 to 5 slots to prevent exhaustion #46
This file contains hidden or 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: Build | |
| on: | |
| push: | |
| branches: [main] | |
| tags: ["v*"] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| build-v5: | |
| name: IDF v5.3.2 / esp32s3 | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write # needed to upload release assets | |
| id-token: write # needed for provenance attestation | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: espressif/esp-idf-ci-action@v1 | |
| with: | |
| esp_idf_version: v5.3.2 | |
| target: esp32s3 | |
| path: "." | |
| command: idf.py build | |
| # Merge all flash regions into one file — simpler for users doing a first flash. | |
| # Offsets match partition-table.csv (bootloader 0x0, pt 0x8000, otadata 0x11000, app 0x20000). | |
| # Write merged binary to workspace root — build/ is owned by the | |
| # Docker container from the previous step and is not writable here. | |
| - name: Create merged firmware binary | |
| run: | | |
| pip install esptool --quiet | |
| esptool --chip esp32s3 merge-bin \ | |
| --output unitcams3_merged.bin \ | |
| 0x0 build/bootloader/bootloader.bin \ | |
| 0x8000 build/partition_table/partition-table.bin \ | |
| 0x11000 build/ota_data_initial.bin \ | |
| 0x20000 build/unitcams3_firmware.bin | |
| # Attest provenance for the merged binary. | |
| # Creates a signed SLSA statement on GitHub's transparency log. | |
| # Verify with: gh attestation verify unitcams3_merged.bin --repo hbentel/M5Stack-Unit-CamS3-5MP | |
| # Attestation requires a public repo or GitHub Advanced Security. | |
| # continue-on-error so the build stays green on private forks or forks | |
| # without the id-token:write permission. | |
| - name: Attest build provenance | |
| uses: actions/attest-build-provenance@v2 | |
| id: attest | |
| continue-on-error: true | |
| with: | |
| subject-path: unitcams3_merged.bin | |
| # Upload binaries to the GitHub Release (only runs on tag pushes). | |
| - name: Upload firmware to release | |
| if: startsWith(github.ref, 'refs/tags/') | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| files: | | |
| unitcams3_merged.bin | |
| build/unitcams3_firmware.bin | |
| build/bootloader/bootloader.bin | |
| build/partition_table/partition-table.bin | |
| build/ota_data_initial.bin | |
| build-v6: | |
| name: IDF v6.0 / esp32s3 | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: espressif/esp-idf-ci-action@v1 | |
| with: | |
| esp_idf_version: release-v6.0 | |
| target: esp32s3 | |
| path: "." | |
| command: idf.py build |