name: On PRs - Linux - Static Analysis concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true on: workflow_dispatch: pull_request: paths-ignore: - "*.md" jobs: special_pvsStudio: name: 'Ubuntu 22.04 - GCC - Static Analyzer: PVS-Studio' runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v3 with: fetch-depth: 2 # Trying to deal with warning: -> Issue detecting commit SHA. Please run actions/checkout with fetch-depth > 1 or set to 0 - name: install dependencies run: | pip3 install conan==1.54.0 sudo add-apt-repository ppa:ubuntu-lxc/daily -y wget -q -O - https://files.pvs-studio.com/etc/pubkey.txt |sudo apt-key add - sudo wget -O /etc/apt/sources.list.d/viva64.list https://files.pvs-studio.com/etc/viva64.list sudo apt-get update -qq sudo apt-get install -qq pvs-studio - name: Conan common config run: | conan profile new --detect default conan profile update settings.compiler.libcxx=libstdc++11 default - name: Run Conan run: | mkdir build && cd build conan profile list conan profile show default conan install .. -o webready=True --build missing - name: Configure run: | cmake --preset linux-debug-NoConan -S . -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON - name: Static Analysis env: PVS_USERNAME: ${{ secrets.PVS_USERNAME }} PVS_KEY: ${{ secrets.PVS_KEY }} run: | cd build pvs-studio-analyzer credentials $PVS_USERNAME $PVS_KEY -o PVS_license.lic pvs-studio-analyzer analyze -l PVS_license.lic -o pvsStudio.log -j4 --disableLicenseExpirationCheck plog-converter -a GA:1,2 -d V1042 -t fullhtml pvsStudio.log -o pvsReportHtml - uses: actions/upload-artifact@v3 with: name: static_analysis path: build/pvsReportHtml retention-days: 7