Skip to content

Merge pull request #105 from sjinks/renovate/ubuntu-24.04 #261

Merge pull request #105 from sjinks/renovate/ubuntu-24.04

Merge pull request #105 from sjinks/renovate/ubuntu-24.04 #261

name: Static Code Analysis
on:
push:
branches:
- master
pull_request:
branches:
- master
workflow_dispatch:
permissions:
contents: none
jobs:
scan-build:
name: Run Clang Analyzer
runs-on: ubuntu-24.04
permissions:
contents: read
security-events: write
env:
CXX: clang++-18
CCC_CXX: clang++-18
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT: 1
SCANBUILD_DIR: /tmp/scanbuild
steps:
- name: Check out code
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
- name: Install dependencies
uses: ./.github/actions/install-dependencies
- name: Run analysis
run: |
scan-build-17 cmake -B build
scan-build-17 --force-analyze-debug-code -sarif --status-bugs -no-failure-reports -o "${SCANBUILD_DIR}" --exclude build cmake --build build
continue-on-error: true
id: scanbuild
- name: Merge SARIF reports
run: sarif-multitool merge "${{ env.SCANBUILD_DIR }}/" --recurse --output-directory=/tmp --output-file=scan-build.sarif
- name: Upload scan results
uses: github/codeql-action/upload-sarif@f779452ac5af1c261dce0346a8f964149f49322b # v3.26.13
with:
sarif_file: /tmp/scan-build.sarif
category: scanbuild
continue-on-error: true
- name: Set exit code
run: exit 1
if: steps.scanbuild.outcome == 'failure'