Skip to content

🧠 Qodana: Static Code Analysis #283

🧠 Qodana: Static Code Analysis

🧠 Qodana: Static Code Analysis #283

Workflow file for this run

name: '🧠 Qodana: Static Code Analysis'
on:
pull_request:
paths:
- 'src/**'
- '.github/workflows/qodana.yml'
types: [opened, synchronize, reopened]
push:
branches:
- 'master'
paths:
- 'src/**'
- '.github/workflows/qodana.yml'
schedule:
- cron: '17 5 * * 0' # Random time
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
scan:
# Skip push event by dependabot to avoid permission issues.
if: ${{ github.actor != 'dependabot[bot]' || github.event_name != 'push' }}
runs-on: ubuntu-latest
permissions:
contents: write
checks: write
security-events: write
steps:
- name: 📥 checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 💾 cache nuget packages
uses: actions/cache@v4
with:
path: ${{ runner.temp }}/qodana/caches
key: ${{ runner.os }}-qodana-${{ github.ref }}-${{ hashFiles('**/*.csproj') }}
restore-keys: |
${{ runner.os }}-qodana-${{ github.ref }}
- name: 🔬 qodana scan
uses: JetBrains/[email protected]
with:
pr-mode: false
args: |
--project-dir,src,
--save-report=false
results-dir: ${{ runner.temp }}/qodana/results
cache-dir: ${{ runner.temp }}/qodana/caches
primary-cache-key: ${{ runner.os }}-qodana-${{ github.ref }}-${{ hashFiles('**/*.csproj') }}
additional-cache-key: ${{ runner.os }}-qodana-${{ github.ref }}
env:
QODANA_TOKEN: ${{ secrets.QODANA_TOKEN }}
- name: 📊 upload sarif file for GitHub Advanced Security Dashboard
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: ${{ runner.temp }}/qodana/results/qodana.sarif.json
if: ${{ always() }}