Skip to content

actions: Set matrix strategy, generate default ELF signing key, uploa… #39

actions: Set matrix strategy, generate default ELF signing key, uploa…

actions: Set matrix strategy, generate default ELF signing key, uploa… #39

Workflow file for this run

on:
push:
branches:
- develop
- feature/*
workflow_dispatch:
jobs:
build:
name: build
runs-on: arm-none-eabi-gcc
strategy:
matrix:
port:
- nwdaq_br28_fdc
- nwdaq_br28_bl_fdc
steps:
- name: Setup arm-none-eabi-gcc path
run: echo "/opt/arm-gnu-toolchain-13.2.Rel1-aarch64-arm-none-eabi/bin" >> $GITHUB_PATH
- name: Checkout
uses: actions/checkout@v4
with:
set-safe-directory: false
- run: |
git fetch --prune --unshallow --no-recurse-submodules
- name: Install python venv & dependencies
run: |
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
echo PATH=$PATH >> $GITHUB_ENV
echo VIRTUAL_ENV=$VIRTUAL_ENV >> $GITHUB_ENV
- name: Create default ELF signing key
run: |
python -c "import hashlib; import base64; print(base64.b64encode(hashlib.sha256(b'default-key').digest()).decode('utf-8'))" > elfsign.key
scripts/elfsign.py --sk elfsign.key -p elfsign.pub
- name: Select the port
run: defconfig config/${{ matrix.port }}_defconfig
- name: Compile
run: |
scons firmware-sign
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
path: |
bin/*
.config