Store version in a firmware #71
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: | |
| branches: | |
| - main | |
| paths-ignore: | |
| - '*.md' | |
| - .github/workflows/*.yaml | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| custom-firmware-build: | |
| runs-on: ubuntu-24.04-arm | |
| permissions: | |
| pull-requests: write | |
| contents: read | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v3 | |
| with: | |
| fetch-depth: 0 | |
| submodules: recursive | |
| - name: Load values vars.mk | |
| run: cat vars.mk >> "$GITHUB_ENV" | |
| - name: Restore Firmwares Cache | |
| id: cache-firmwares | |
| uses: actions/cache/restore@v4 | |
| with: | |
| path: firmware/ | |
| key: firmwares-${{ runner.os }}-${{ runner.arch }}-${{ env.FIRMWARE_VERSION }} | |
| - name: Restore Kernel Cache | |
| id: cache-kernel | |
| uses: actions/cache/restore@v4 | |
| with: | |
| path: tmp/kernel/ | |
| key: kernels-${{ runner.os }}-${{ runner.arch }}-${{ env.KERNEL_SHA }} | |
| - name: Install build dependencies | |
| run: | | |
| sudo apt-get update -y && | |
| sudo apt-get install -y build-essential cmake \ | |
| gcc-aarch64-linux-gnu pkg-config squashfs-tools git-core \ | |
| bc libssl-dev | |
| - name: Set GIT_VERSION | |
| shell: bash | |
| run: | | |
| nextVer=$(./scripts/next_version.sh paxx12 test-pr-${{ github.event.pull_request.number }}) | |
| echo "GIT_VERSION=${nextVer//v/}" | tee -a $GITHUB_ENV | |
| - name: Download firmware | |
| run: make firmware | |
| - name: Build with Basic firmware | |
| run: sudo GIT_VERSION=${{ env.GIT_VERSION }} make build PROFILE=basic OUTPUT_FILE=U1_basic_${{ env.GIT_VERSION }}_upgrade.bin | |
| - name: Build with Extended firmware | |
| run: sudo GIT_VERSION=${{ env.GIT_VERSION }} make build PROFILE=extended OUTPUT_FILE=U1_extended_${{ env.GIT_VERSION }}_upgrade.bin | |
| - name: Clear Kernel Git Repo | |
| run: sudo git -C tmp/kernel/ clean -fdx | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: basic-build | |
| path: U1_basic_*.bin | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: extended-build | |
| path: U1_extended_*.bin | |
| - name: Comment PR with artifact links | |
| uses: actions/github-script@v7 | |
| if: github.event_name == 'pull_request' | |
| with: | |
| script: | | |
| const body = `✅ Build artifacts ready: [Download builds](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})`; | |
| await github.rest.issues.createComment({ | |
| owner: context.repo.owner, | |
| repo: context.repo.repo, | |
| issue_number: context.issue.number, | |
| body: body | |
| }); | |
| - name: Save Firmwares Cache | |
| if: steps.cache-firmwares.outputs.cache-hit != 'true' | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: firmware/ | |
| key: firmwares-${{ runner.os }}-${{ runner.arch }}-${{ env.FIRMWARE_VERSION }} | |
| - name: Save Kernel Cache | |
| if: steps.cache-kernel.outputs.cache-hit != 'true' | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: tmp/kernel/ | |
| key: kernels-${{ runner.os }}-${{ runner.arch }}-${{ env.KERNEL_SHA }} |