summaryrefslogtreecommitdiff
path: root/.github/workflows/codeql-analysis.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/codeql-analysis.yml')
-rw-r--r--.github/workflows/codeql-analysis.yml50
1 files changed, 50 insertions, 0 deletions
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
new file mode 100644
index 0000000..9e1080e
--- /dev/null
+++ b/.github/workflows/codeql-analysis.yml
@@ -0,0 +1,50 @@
+name: "CodeQL"
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ # The branches below must be a subset of the branches above
+ branches: [ master ]
+ schedule:
+ - cron: '18 10 * * 3'
+
+jobs:
+ analyze:
+ name: Analyze
+ runs-on: ubuntu-latest
+ permissions:
+ actions: read
+ contents: read
+ security-events: write
+
+ strategy:
+ fail-fast: false
+ matrix:
+ language: [ 'cpp' ]
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v2
+
+ - name: Initialize CodeQL
+ uses: github/codeql-action/init@v1
+ with:
+ languages: ${{ matrix.language }}
+
+ - name: Install Prerequisites
+ shell: bash
+ run: sudo apt install -y ninja-build libpopt-dev
+
+ - name: Build
+ shell: bash
+ run: |
+ mkdir $PWD/build
+ cmake -S . -B build -GNinja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DBUILD_EXAMPLES=ON \
+ -DBUILD_TOOLS=ON
+ cmake --build build
+
+ - name: Perform CodeQL Analysis
+ uses: github/codeql-action/analyze@v1