From b4b17cb999654383da8618dd573d65b6520928d7 Mon Sep 17 00:00:00 2001 From: Manuel Weiser Date: Wed, 19 Feb 2025 09:40:30 +0100 Subject: [PATCH] feat: update GitHub release workflow and increment version to 1.2.24 --- .github/workflows/release.yml | 89 +++++++++++++++++++++-------------- platformio.ini | 2 +- 2 files changed, 55 insertions(+), 36 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index eab38de..d3b63af 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,41 +1,60 @@ -name: Release +name: GitHub Release on: - push: - tags: - - 'v*' + workflow_call: + inputs: + version: + required: true + type: string + changelog: + required: true + type: string + +permissions: + contents: write jobs: - prepare: - runs-on: gitea-runner - outputs: - version: ${{ steps.version.outputs.version }} - changelog: ${{ steps.changelog.outputs.changelog }} + build: + runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - - name: Get version from tag - id: version - run: | - VERSION=${GITHUB_REF#refs/tags/v} - echo "version=$VERSION" >> $GITHUB_OUTPUT - - - name: Get changelog - id: changelog - run: | - echo "$CHANGELOG" >> $GITHUB_OUTPUT - echo "EOF" >> $GITHUB_OUTPUT - - - name: Run GitHub Release - if: github.server_url == 'https://github.com' - uses: ./.github/workflows/providers/github-release.yml - with: - version: ${{ steps.version.outputs.version }} - changelog: ${{ steps.changelog.outputs.changelog }} + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: '3.x' + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install --upgrade platformio esptool + + - name: Build Firmware + run: | + pio run -t buildfs + pio run - - name: Run Gitea Release - if: github.server_url != 'https://gitlab.fire-devils.org' - uses: ./.github/workflows/providers/gitea-release.yml - with: - version: ${{ steps.version.outputs.version }} - changelog: ${{ steps.changelog.outputs.changelog }} \ No newline at end of file + - name: Merge firmware and SPIFFS + run: | + esptool.py --chip esp32 merge_bin \ + --flash_mode dio \ + --flash_freq 40m \ + --flash_size 4MB \ + -o .pio/build/esp32dev/filaman_full.bin \ + 0x1000 .pio/build/esp32dev/bootloader.bin \ + 0x8000 .pio/build/esp32dev/partitions.bin \ + 0x10000 .pio/build/esp32dev/firmware.bin \ + 0x290000 .pio/build/esp32dev/spiffs.bin + + - name: Prepare OTA firmware + run: cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/filaman_ota.bin + + - name: Create GitHub Release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + gh release create "${{ github.ref_name }}" \ + --title "Release ${{ inputs.version }}" \ + --notes "${{ inputs.changelog }}" \ + ".pio/build/esp32dev/filaman_full.bin#filaman_full.bin" \ + ".pio/build/esp32dev/filaman_ota.bin#filaman_ota.bin" \ No newline at end of file diff --git a/platformio.ini b/platformio.ini index c7ac177..9e64a57 100644 --- a/platformio.ini +++ b/platformio.ini @@ -9,7 +9,7 @@ ; https://docs.platformio.org/page/projectconf.html [common] -version = "1.2.23" +version = "1.2.24" [env:esp32dev] platform = espressif32