Rework watchdogs, FOTA, and centralize connectivity to main #242
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
| name: Build | |
| on: | |
| workflow_call: | |
| inputs: | |
| firmware_version: | |
| description: Semver written to each application VERSION file before building | |
| required: false | |
| type: string | |
| workflow_dispatch: | |
| inputs: | |
| firmware_version: | |
| description: Semver written to each application VERSION file before building | |
| required: false | |
| type: string | |
| pull_request: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: build-${{ github.event.pull_request.number || github.run_id }} | |
| cancel-in-progress: true | |
| jobs: | |
| cleanup: | |
| runs-on: self-hosted | |
| steps: | |
| - name: Prune old Docker resources | |
| run: docker system prune --force --filter "until=48h" | |
| - name: Remove stale runner temp entries | |
| run: | | |
| # GitHub Actions stores per-job temp files under _work/_temp. | |
| runner_temp_root="$(dirname "${RUNNER_TEMP}")" | |
| find "$runner_temp_root" -mindepth 1 -maxdepth 1 -mmin +2880 \ | |
| ! -path "$RUNNER_TEMP" \ | |
| -exec rm -rf {} + 2>/dev/null || true | |
| build: | |
| needs: cleanup | |
| runs-on: self-hosted | |
| container: ghcr.io/zephyrproject-rtos/ci:v0.29.2 | |
| env: | |
| CMAKE_PREFIX_PATH: /opt/toolchains | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - app: 91m1_ppp | |
| board: nrf54l15dk/nrf54l15/cpuapp/ns | |
| - app: 93m1_ppp | |
| board: nrf93m1dk/nrf54l15/cpuapp/ns | |
| - app: 93m1_at | |
| board: nrf93m1dk/nrf54l15/cpuapp/ns | |
| name: Build ${{ matrix.app }} (${{ matrix.board }}) | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| with: | |
| path: serial-modem-host-applications | |
| - name: Set application VERSION files | |
| if: inputs.firmware_version != '' | |
| working-directory: serial-modem-host-applications | |
| run: | | |
| python3 scripts/ci/write_version.py \ | |
| "${{ inputs.firmware_version }}" \ | |
| applications | |
| - name: Initialize West workspace | |
| uses: ./serial-modem-host-applications/.github/actions/west-init | |
| - name: Build application | |
| working-directory: serial-modem-host-applications/applications/${{ matrix.app }} | |
| run: west build -b ${{ matrix.board }} -p | |
| - name: Upload firmware artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: firmware-${{ matrix.app }} | |
| path: serial-modem-host-applications/applications/${{ matrix.app }}/build/ | |
| include-hidden-files: true | |
| retention-days: 14 |