blob: f3cf13fef9f8544a921176d5efa5dbc27606fb8a [file] [log] [blame]
# SPDX-FileCopyrightText: 2024 Emil Velikov <emil.l.velikov@gmail.com>
# SPDX-FileCopyrightText: 2024 Lucas De Marchi <lucas.de.marchi@gmail.com>
#
# SPDX-License-Identifier: LGPL-2.1-or-later
name: CodeQL
on:
push:
branches: [master, ci-test]
pull_request:
branches: [master]
schedule:
- cron: "30 2 * * 0"
env:
KDIR: 'any'
permissions:
contents: read
jobs:
analyze:
name: Analyze
runs-on: ubuntu-24.04
permissions:
actions: read
security-events: write
strategy:
fail-fast: false
matrix:
include:
- container: 'ubuntu:24.04'
meson_setup: '-D b_sanitize=none -D build-tests=false'
container:
image: ${{ matrix.container }}
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Setup OS
uses: ./.github/actions/setup-os
- name: Initialize CodeQL
uses: github/codeql-action/init@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
with:
languages: cpp
queries: +security-and-quality
- name: Build
run: |
meson setup --native-file build-dev.ini ${{ matrix.meson_setup }} builddir/
meson compile -C builddir/
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
with:
category: "/language:cpp"
upload: false
output: sarif-results
- name: Filter out meson-internal test files
uses: advanced-security/filter-sarif@f3b8118a9349d88f7b1c0c488476411145b6270d # v1.0.1
with:
patterns: |
-builddir/meson-private/**/testfile.c
input: sarif-results/cpp.sarif
output: sarif-results/cpp.sarif
- name: Upload CodeQL results to code scanning
uses: github/codeql-action/upload-sarif@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
with:
sarif_file: sarif-results/cpp.sarif
category: "/language:cpp"