feat: add option to display numerals on clock face #24
Workflow file for this run
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
| on: | |
| push: | |
| tags: | |
| - "*" | |
| name: Build | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v3 | |
| with: | |
| fetch-tags: true | |
| fetch-depth: 0 | |
| submodules: 'recursive' | |
| - uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cache/pip | |
| ~/.platformio/.cache | |
| key: ${{ runner.os }}-pio | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| - name: Install PlatformIO Core | |
| run: pip install --upgrade platformio | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: 'npm' | |
| cache-dependency-path: web/package-lock.json | |
| - name: Add version | |
| run: | | |
| mkdir -p out | |
| mkdir -p upload/display | |
| mkdir -p upload/headless | |
| mkdir -p upload/controller | |
| git tag -d nightly || true | |
| git tag -d personal || true | |
| git tag -d db || true | |
| git describe --tags --dirty > out/version.txt | |
| - name: Build Web | |
| run: ./scripts/build_webui.sh | |
| - name: Build controller | |
| run: | | |
| pio run -e controller | |
| cp .pio/build/controller/firmware.bin out/board-firmware.bin | |
| cp .pio/build/controller/partitions.bin out/board-partitions.bin | |
| cp .pio/build/controller/bootloader.bin out/board-bootloader.bin | |
| cp .pio/build/controller/firmware.bin upload/controller/firmware.bin | |
| cp .pio/build/controller/partitions.bin upload/controller/partitions.bin | |
| cp .pio/build/controller/bootloader.bin upload/controller/bootloader.bin | |
| - uses: ./.github/actions/upload-firmware | |
| continue-on-error: true | |
| env: | |
| UPDATE_SERVER_HOST: ${{ secrets.UPDATE_SERVER_HOST }} | |
| UPDATE_SERVER_API_KEY: ${{ secrets.UPDATE_SERVER_API_KEY }} | |
| with: | |
| channel: 'stable' | |
| target: 'controller' | |
| firmware_dir: 'upload/controller' | |
| - name: Build display FS | |
| run: | | |
| pio run -t buildfs -e display | |
| cp .pio/build/display/littlefs.bin out/display-filesystem.bin | |
| cp .pio/build/display/littlefs.bin out/display-headless-filesystem.bin | |
| cp .pio/build/display/littlefs.bin upload/display/filesystem.bin | |
| cp .pio/build/display/littlefs.bin upload/headless/filesystem.bin | |
| - name: Build display | |
| run: | | |
| pio run -e display | |
| cp .pio/build/display/firmware.bin out/display-firmware.bin | |
| cp .pio/build/display/partitions.bin out/display-partitions.bin | |
| cp .pio/build/display/bootloader.bin out/display-bootloader.bin | |
| cp .pio/build/display/firmware.bin upload/display/firmware.bin | |
| cp .pio/build/display/partitions.bin upload/display/partitions.bin | |
| cp .pio/build/display/bootloader.bin upload/display/bootloader.bin | |
| - uses: ./.github/actions/upload-firmware | |
| continue-on-error: true | |
| env: | |
| UPDATE_SERVER_HOST: ${{ secrets.UPDATE_SERVER_HOST }} | |
| UPDATE_SERVER_API_KEY: ${{ secrets.UPDATE_SERVER_API_KEY }} | |
| with: | |
| channel: 'stable' | |
| target: 'display' | |
| firmware_dir: 'upload/display' | |
| firmware_files: 'bootloader.bin,partitions.bin,firmware.bin,filesystem.bin' | |
| - name: Build headless | |
| run: | | |
| pio run -e display-headless | |
| cp .pio/build/display-headless/firmware.bin out/display-headless-firmware.bin | |
| cp .pio/build/display-headless/partitions.bin out/display-headless-partitions.bin | |
| cp .pio/build/display-headless/bootloader.bin out/display-headless-bootloader.bin | |
| cp .pio/build/display-headless/firmware.bin upload/headless/firmware.bin | |
| cp .pio/build/display-headless/partitions.bin upload/headless/partitions.bin | |
| cp .pio/build/display-headless/bootloader.bin upload/headless/bootloader.bin | |
| - uses: ./.github/actions/upload-firmware | |
| continue-on-error: true | |
| env: | |
| UPDATE_SERVER_HOST: ${{ secrets.UPDATE_SERVER_HOST }} | |
| UPDATE_SERVER_API_KEY: ${{ secrets.UPDATE_SERVER_API_KEY }} | |
| with: | |
| channel: 'stable' | |
| target: 'headless' | |
| firmware_dir: 'upload/headless' | |
| firmware_files: 'bootloader.bin,partitions.bin,firmware.bin,filesystem.bin' | |
| - name: Archive Firmware Files | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: gaggimate-firmware | |
| path: "out/*" | |
| release: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Download Firmware Files | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: gaggimate-firmware | |
| path: release | |
| - name: Release Firmware | |
| uses: ncipollo/release-action@bcfe5470707e8832e12347755757cec0eb3c22af | |
| if: startsWith(github.ref, 'refs/tags/') | |
| with: | |
| artifacts: release/*.bin | |
| generateReleaseNotes: true | |
| allowUpdates: true | |
| token: ${{ secrets.GITHUB_TOKEN }} |