Skip to content

Publish Docker

Publish Docker #608

name: Publish Docker
on:
push:
branches:
- saga
schedule:
- cron: "0 0 * * *"
jobs:
build:
strategy:
matrix:
sdk_nrf_branch:
- main
- v2.4-branch
- v2.3-branch
- v2.2-branch
- v2.1-branch
- v2.0-branch
include:
- sdk_nrf_branch: main
toolchain_version: v2.4.1
- sdk_nrf_branch: v2.4-branch
toolchain_version: v2.4.1
- sdk_nrf_branch: v2.3-branch
toolchain_version: v2.3.0
- sdk_nrf_branch: v2.2-branch
toolchain_version: v2.2.0
- sdk_nrf_branch: v2.1-branch
toolchain_version: v2.1.3
- sdk_nrf_branch: v2.0-branch
toolchain_version: v2.0.2
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build image
run: |
docker build -t nordicplayground/nrfconnect-sdk:${{ matrix.sdk_nrf_branch }} \
--build-arg sdk_nrf_branch=${{ matrix.sdk_nrf_branch }} \
--build-arg toolchain_version=${{ matrix.toolchain_version }} \
.
- name: Build asset_tracker_v2 application
run: |
docker run --rm \
-v ${PWD}:/workdir/project \
-w /workdir/nrf/applications/asset_tracker_v2 \
nordicplayground/nrfconnect-sdk:${{ matrix.sdk_nrf_branch }} \
west build -b nrf9160dk_nrf9160ns --build-dir /workdir/project/build -- -DEXTRA_CFLAGS="-Werror -Wno-dev"
- uses: actions/upload-artifact@v3
with:
if-no-files-found: error
name: asset_tracker_v2-${{ matrix.sdk_nrf_branch }}
path: |
build/zephyr/merged.hex
build/zephyr/app_update.bin
- name: Ensure nrfjprog works
run: |
docker run --rm nordicplayground/nrfconnect-sdk:${{ matrix.sdk_nrf_branch }} nrfjprog -v
- name: Ensure clang-format works
run: |
docker run --rm nordicplayground/nrfconnect-sdk:${{ matrix.sdk_nrf_branch }} clang-format --version
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: nordicplayground
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Publish image
run: |
docker images
docker push nordicplayground/nrfconnect-sdk:${{ matrix.sdk_nrf_branch }}