Skip to content

ci: tests: Run provisioning test for non EB2 54LM20 boards #249

ci: tests: Run provisioning test for non EB2 54LM20 boards

ci: tests: Run provisioning test for non EB2 54LM20 boards #249

Workflow file for this run

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-build
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-build
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
board_type: nrf54l15
- app: 91m1_ppp
board: nrf54lm20dk/nrf54lm20b/cpuapp/ns
board_type: nrf54lm20b
- app: 91m1_ppp
board: nrf54lm20dk/nrf54lm20b/cpuapp/ns
board_type: nrf54lm20b-location
extra_args: >-
-- -DSHIELD=nrf7002eb2
-DEXTRA_CONF_FILE=overlay-location.conf
-DSB_EXTRA_CONF_FILE=sysbuild-location.conf
- app: 93m1_ppp
board: nrf93m1dk/nrf54l15/cpuapp/ns
board_type: nrf93m1
- app: 93m1_at
board: nrf93m1dk/nrf54l15/cpuapp/ns
board_type: nrf93m1
name: Build ${{ matrix.app }} [${{ matrix.board_type }}]
steps:
- name: Checkout
uses: actions/checkout@v6
with:
path: serial-modem-host-applications
- name: Initialize West workspace
uses: ./serial-modem-host-applications/.github/actions/west-init
# Must stay after west-init: it runs `git reset --hard HEAD` on the
# manifest, which would revert tracked VERSION files to the repo default.
- 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: Build application
working-directory: serial-modem-host-applications/applications/${{ matrix.app }}
run: |
echo "Flavor: ${{ matrix.board_type }}"
echo "Board: ${{ matrix.board }}"
west build -b ${{ matrix.board }} -p ${{ matrix.extra_args }}
- name: Upload firmware artifact
uses: actions/upload-artifact@v7
with:
name: firmware-${{ matrix.app }}-${{ matrix.board_type }}
path: serial-modem-host-applications/applications/${{ matrix.app }}/build/
include-hidden-files: true
retention-days: 14