Added github action to test CPP API #2
Workflow file for this run
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: Compile and Run | |
on: | |
workflow_dispatch: | |
pull_request: | |
branches: [main] | |
push: | |
branches: [main] | |
permissions: | |
actions: read | |
security-events: write | |
jobs: | |
CI_cpp_test_run: | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [AC6, CLANG, GCC] | |
core: [M0, M4, M55] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Python 3.10 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
- name: Install system packages | |
run: | | |
sudo add-apt-repository ppa:deadsnakes/ppa | |
sudo apt-get install libpython3.9 libtinfo5 | |
- name: Activate vcpkg | |
uses: ARM-software/cmsis-actions/vcpkg@v1 | |
with: | |
cache: "-${{ matrix.compiler }}-${{ matrix.core }}" | |
- name: Activate Arm tool license | |
uses: ARM-software/cmsis-actions/armlm@v1 | |
- name: Prepare framework | |
run: | | |
cd dsppp | |
echo "Create missing folders" | |
mkdir AC6_results | |
mkdir CLANG_results | |
mkdir GCC_results | |
echo "Install missing python packages" | |
pip install -r ../Testing/requirements.txt | |
echo "Load missing pack" | |
csolution list packs -s test.csolution.yml -m > required_packs.txt | |
cat required_packs.txt | |
cpackget add -a -f required_packs.txt | |
- name: Execute | |
run: | | |
cd dsppp | |
echo "Running tests" | |
python run_all.py -t -g ${{ matrix.compiler }} -c ${{ matrix.core }} -avh $AVH_FVP_PLUGINS/../bin | |
- name: Upload test report | |
uses: actions/upload-artifact@v4 | |
with: | |
name: test-report_${{ matrix.compiler }}_${{ matrix.core }} | |
path: ${{ matrix.compiler }}_results/errors_${{ matrix.compiler }}.txt | |
- name: Check error | |
run: | | |
cd dsppp | |
echo "Checking output..." | |
test "$(cat ${{ matrix.compiler }}_results/errors_${{ matrix.compiler }}.txt | wc -l)" -eq 0 |