current commit
260620.1 · build(deps): bump actions/checkout from 6 to 7 in the official-actions group (#3565)
name: Clang scan-build Static Analyzer Build

on:
  push:
    branches:
      - master

jobs:
  scan-build:
    runs-on: ubuntu-latest
    steps:
      - name: Clone repository
        uses: actions/checkout@v7
        with:
          submodules: true
      - name: Install packages
        run: |
          sudo apt-get update -qq
          sudo apt-get install -y automake autoconf gdb valgrind clang clang-tools
          echo "CC=clang" >> "$GITHUB_ENV"
      - name: Build
        run: |
          autoreconf -i
          ./configure --enable-valgrind CFLAGS="-g -O0"
          scan-build --keep-going --exclude vendor/ make -j"$(nproc)"
      - name: Test
        run: |
          ulimit -c unlimited
          scan-build --keep-going --exclude vendor/ make -j"$(nproc)" check
      - name: Core dump stacks
        run: |
          if [[ -f core ]]; then
            gdb -batch -ex "thread apply all bt" \
              "$(file core | sed "s/^[^']*'//; s/[ '].*$//")" core
            exit 1
          fi
      - name: Test logs
        if: ${{ failure() }}
        run: |
          cat test-suite.log tests/*.log
      - name: Upload Logs
        uses: actions/upload-artifact@v7
        with:
          name: Scan-Build Reports
          path: /tmp/scan-build*
          if-no-files-found: ignore
          retention-days: 7