name: "CodeQL" on: push: branches: [ "main" ] pull_request: branches: [ "main" ] # Ignore changes to common non-code files. paths-ignore: - '**/*.md' - '**/*.rst' - '**/*.txt' - '**/*.yml' - '**/*.yaml' - '**/*.json' - '**/*.ini' - '**/*.env' schedule: - cron: '25 6 * * 3' jobs: analyze: name: Analyze runs-on: ubuntu-latest permissions: actions: read contents: read security-events: write steps: - name: Checkout code uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: persist-credentials: false # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL uses: github/codeql-action/init@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0 with: languages: go # xref: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs # xref: https://codeql.github.com/codeql-query-help/go/ queries: security-and-quality # Build the project, and run CodeQL analysis. # We do not make use of autobuild as this would run the first Make # target, which includes a lot more than just the Go files we want to # scan. - name: Build run: | make vendor make install - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0 with: category: "/language:go"