如果使用高级设置,并且工作流未显式指定要分析的语言,则 CodeQL 隐式检测代码库中支持的语言。 在此配置中,从编译的语言 C/C++、C#、Go、Java、Kotlin、Rust、和 Swift中, CodeQL 只分析包含大多数源文件的语言。 编辑工作流并添加一个矩阵,以指定要分析的语言。 默认 CodeQL 分析工作流使用此类矩阵。
以下工作流中提取的内容演示如何在作业策略中使用矩阵来指定语言,然后在“初始化 CodeQL”步骤中引用每种语言:
jobs:
analyze:
permissions:
security-events: write
actions: read
# ...
strategy:
fail-fast: false
matrix:
language: ['csharp', 'c-cpp', 'javascript-typescript']
steps:
# ...
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: ${{ matrix.language }}
有关编辑工作流的详细信息,请参阅 代码扫描的工作流配置选项。