Skip to content

Feature/replace flaky MAX11300 #102

Feature/replace flaky MAX11300

Feature/replace flaky MAX11300 #102

Workflow file for this run

name: Firmware Checks And Builds
on:
# run for all pull requests
# Run for all commits on feature branches
push:
paths:
- 'firmware/**'
- 'dsp/**'
- 'lib/**'
- '.github/workflows/**'
pull_request:
paths:
- 'firmware/**'
- 'dsp/**'
- 'lib/**'
- '.github/workflows/**'
jobs:
###############################################################################
# builds the firmware on arm-none-eabi-gcc
firmware-build:
runs-on: ubuntu-latest
steps:
- name: Install arm-none-eabi-gcc
uses: fiam/arm-none-eabi-gcc@v1
with:
release: '9-2019-q4' # The arm-none-eabi-gcc release to use.
- name: Setup cmake
uses: jwlawson/[email protected]
with:
cmake-version: '3.20.x'
- name: Checkout
uses: actions/checkout@v2
with:
submodules: recursive
- name: Configure
run: cmake -S firmware -B firmware/build -G "Unix Makefiles" -D CMAKE_TOOLCHAIN_FILE="$(pwd)/lib/libDaisy/cmake/toolchains/stm32h750xx.cmake" -D TOOLCHAIN_PREFIX=$(which arm-none-eabi-gcc | sed -e "s/bin\/arm-none-eabi-gcc//")
- name: Build
run: cmake --build firmware/build
- name: Upload Firmware hex
uses: actions/upload-artifact@v2
with:
name: TapeLooper.hex
path: firmware/build/TapeLooper.hex
- name: Upload Firmware bin
uses: actions/upload-artifact@v2
with:
name: TapeLooper.bin
path: firmware/build/TapeLooper.bin
###############################################################################
# builds the automated tests with clang; runs tests and exports results
firmware-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: recursive
- name: Build
run: |
cd firmware/tests
make release
- name: Run Tests
run: |
cd firmware/tests/build/bin
./TapeLooper_gtest --gtest_output=xml:gtestresults.xml
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@v1
if: always()
with:
files: firmware/tests/build/bin/**/*.xml
github_token: ${{ secrets.GITHUB_TOKEN }}