name: C on: push: branches: - main pull_request: branches: - main jobs: tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: submodules: recursive - name: Check formatting working-directory: src run: | make format git diff --exit-code - name: Build/Test working-directory: src run: make - name: Clang Sanitizers working-directory: src run: make sanitize - name: Clang Static Analyzer working-directory: src run: make analyze - name: Install LLVM uses: egor-tensin/setup-clang@v1 - name: Generate coverage report working-directory: src run: make coverage - name: Save coverage report uses: actions/upload-artifact@v3 with: name: coverage path: src/coverage.html