Merge pull request #337 from aabadie/trustzone_non_secure_support #1068
This file contains 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: CI | |
on: | |
push: | |
branches: | |
- main | |
tags: 'REL-*' | |
pull_request: | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
target: ["dotbot-v1", "dotbot-v2", "freebot-v1.0", "lh2-mini-mote", "nrf52833dk", "nrf52840dk", "nrf5340dk-app", "nrf5340dk-net", "sailbot-v1", "xgo-v1", "xgo-v2"] | |
config: ["Debug", "Release"] | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Build projects | |
run: BUILD_TARGET=${{ matrix.target }} BUILD_CONFIG=${{ matrix.config }} make docker | |
- name: Build for release and convert elf artifacts to hex | |
if: matrix.config == 'Release' | |
run: BUILD_TARGET=${{ matrix.target }} DOCKER_TARGETS="artifacts" BUILD_CONFIG=${{ matrix.config }} make docker | |
- name: Upload artifact | |
if: matrix.config == 'Release' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: artifacts-${{ matrix.target }} | |
path: artifacts/* | |
build-success: | |
# this is only run if all builds succeeded | |
needs: build | |
runs-on: ubuntu-latest | |
steps: | |
- name: build succeeded | |
run: exit 0 | |
style: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Check style | |
run: make check-format | |
doc: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Install Doxygen | |
run: sudo apt-get install -y doxygen graphviz | |
- name: Install Sphinx | |
run: python -m pip install -r doc/sphinx/requirements.txt | |
- name: Build documentation | |
run: make doc | |
docker: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Build docker image | |
run: docker build -t dotbot . | |
release: | |
runs-on: ubuntu-latest | |
needs: [docker, doc, style, build-success] | |
if: >- | |
github.event_name == 'push' && | |
startsWith(github.event.ref, 'refs/tags') | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Download DotBot v1 artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-dotbot-v1 | |
path: ./artifacts | |
- name: Download DotBot v2 artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-dotbot-v2 | |
path: ./artifacts | |
- name: Download Sailbot v1 artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-sailbot-v1 | |
path: ./artifacts | |
- name: Download nRF52833DK artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-nrf52833dk | |
path: ./artifacts | |
- name: Download nRF52840DK artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-nrf52840dk | |
path: ./artifacts | |
- name: Download nRF5340DK application artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-nrf5340dk-app | |
path: ./artifacts | |
- name: Download nRF5340DK network artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-nrf5340dk-net | |
path: ./artifacts | |
- name: Download Freebot artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-freebot-v1.0 | |
path: ./artifacts | |
- name: Download XGO v1 artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-xgo-v1 | |
path: ./artifacts | |
- name: Download XGO v2 artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-xgo-v2 | |
path: ./artifacts | |
- name: Download LH2 mini mote artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts-lh2-mini-mote | |
path: ./artifacts | |
- name: Release | |
uses: ncipollo/release-action@v1 | |
with: | |
generateReleaseNotes: true | |
artifacts: "artifacts/*" | |
token: ${{ secrets.RELEASE_TOKEN }} |