Skip to content

Workflow file for this run

name: Build app in NCS docker container
on:
push:
pull_request:
jobs:
find-toolchain:
runs-on: ubuntu-22.04
container: docker.io/zephyrprojectrtos/ci-base:latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: example-application
- name: Initialize
shell: bash
run: |
west init -l example-application
west update nrf
- name: Find latest sdk-nrf tag
working-directory: nrf
run: echo "LATEST_NRF_TAG=$(git describe --first-parent --abbrev=0)" >> $GITHUB_ENV
- name: Test
run: echo $LATEST_NRF_TAG
build:
needs: find-toolchain
runs-on: ubuntu-22.04
container: ghcr.io/nrfconnect/sdk-nrf-toolchain:${LATEST_NRF_TAG}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: example-application
- name: Initialize
shell: bash
run: |
source /opt/entrypoint.sh
west init -l example-application
west update -o=--depth=1 -n
apt-get update && apt-get install -y qemu-system-arm
- name: Build firmware
working-directory: example-application
shell: bash
run: |
source /opt/entrypoint.sh
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$(dirname $(which nanopb_generator))"
west twister -T app -v --inline-logs --integration
- name: Store hex files
uses: actions/upload-artifact@v4
with:
name: built-applications
path: example-application/twister-out/**/zephyr/zephyr.hex
- name: Twister Tests
working-directory: example-application
shell: bash
run: |
source /opt/entrypoint.sh
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ncs/toolchains/2be090971e/opt/nanopb/generator-bin
west twister -T tests -v --inline-logs --integration