name: CodeQL production on: push: branches: [main] pull_request: branches: [main] schedule: - cron: "37 5 * * 1" workflow_dispatch: permissions: contents: read concurrency: group: codeql-production-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: analyze: # A repository administrator must disable default setup before enabling # this workflow; default setup rejects advanced CodeQL result uploads. if: vars.REA_CODEQL_ADVANCED == 'true' name: Analyze production (${{ matrix.language }}) runs-on: ubuntu-latest timeout-minutes: 45 permissions: contents: read security-events: write strategy: fail-fast: false max-parallel: 1 matrix: language: [javascript-typescript, python, actions] steps: - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0 with: persist-credentials: false - name: Initialize production analysis uses: github/codeql-action/init@9b3254085494b55a0f7c4c2b3d2d52cc712ce370 # v4 with: languages: ${{ matrix.language }} build-mode: none config-file: .github/codeql/production.yml threads: 2 ram: 4096 - name: Analyze production code uses: github/codeql-action/analyze@9b3254085494b55a0f7c4c2b3d2d52cc712ce370 # v4 with: category: /language:${{ matrix.language }} output: ${{ runner.temp }}/codeql-production-results threads: 2 ram: 4096 - name: Retain complete analysis evidence if: always() uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 with: name: codeql-production-${{ matrix.language }} path: ${{ runner.temp }}/codeql-production-results if-no-files-found: error retention-days: 7