Skip to content

readme: Add OpenSSF Best Practices badge #196

readme: Add OpenSSF Best Practices badge

readme: Add OpenSSF Best Practices badge #196

Workflow file for this run

name: Build and Test
on:
push:
branches: '**'
pull_request:
branches: '**'
jobs:
build_and_test:
runs-on: ubuntu-24.04
strategy:
matrix:
sanitizer: ["address", "leak", "thread", "undefined"]
compiler: ["clang-18", "gcc-13"]
steps:
- name: Checkout code including full history and submodules
uses: actions/checkout@v4
with:
submodules: true
fetch-depth: 0
- name: Install dependencies from APT repository
run: |
sudo apt-get update
sudo apt-get install cmake libcunit1-dev ninja-build unzip wget
- name: Build all binaries
run: |
tools/ci/run_ci.sh --run-build --sanitizer ${{ matrix.sanitizer }} --verbose
env:
CC: ${{ matrix.compiler }}
- name: Build, execute sanitized unit tests
run: |
tools/ci/run_ci.sh --run-tests
env:
CC: ${{ matrix.compiler }}
- name: Build examples for integration tests
run: |
for example in "server" "bootstrap_server"
do
echo "Building example ${example}"
tools/ci/run_ci.sh \
--run-clean \
--run-build \
--sanitizer ${{ matrix.sanitizer }} \
--source-directory examples/${example} \
--build-directory build-wakaama-${example}
done
env:
CC: ${{ matrix.compiler }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r tests/integration/requirements.txt
- name: Execute integration tests
run: |
python -c "import sys; print(sys.version)"
pytest -v tests/integration