name: codeql on: pull_request: branches: - main push: branches: - main schedule: - cron: '33 16 * * 0' permissions: contents: read # Needed to checkout the repository. concurrency: group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}" # Only cancel superseded pull request runs, so every push to main is fully checked. cancel-in-progress: ${{ github.event_name == 'pull_request' }} jobs: analyze: name: analyze (${{ matrix.language }}) runs-on: 'ubuntu-latest' permissions: security-events: write # Needed to upload results. packages: read # Needed to fetch internal or private CodeQL packs. actions: read # Needed to read workflows. contents: read # Needed to checkout the repository. strategy: fail-fast: false matrix: include: - language: actions build-mode: none - language: rust build-mode: none steps: - name: harden runner uses: step-security/harden-runner@351661ca32ac09a36dc5ee2d536e3128f2a3c8ed # v2.22.0 with: egress-policy: audit - name: checkout uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: initialize codeql uses: github/codeql-action/init@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2 # v4.38.2 with: languages: ${{ matrix.language }} build-mode: ${{ matrix.build-mode }} config-file: ./.github/codeql/codeql-config.yaml - name: perform codeql analysis uses: github/codeql-action/analyze@2892aa5e19bbd11bc0cff5427e3b750a04d9e3c2 # v4.38.2 with: category: "/language:${{matrix.language}}"