Skip to main content

一部の言語は CodeQL の高度なセットアップで分析されませんでした

一部の言語が分析されなかった場合は、code scanning ワークフローを変更して、分析したい言語を指定するマトリックスを追加できます。

メモ: この記事では、このバージョンの GitHub Enterprise Server の初期リリースに含まれる CodeQL アクションのバージョンおよび関連する CodeQL CLI バンドルで使用できる機能について説明します。 エンタープライズでより新しいバージョンの CodeQL アクションを使用する場合は、この記事の GitHub Enterprise Cloud バージョンで最新の機能に関する情報を参照してください。 最新バージョンの使用については、「アプライアンス用コードスキャンの構成」を参照してください。

高度なセットアップを使用し、ワークフローが解析する言語を明示的に指定していない場合、CodeQL はコードベースでサポートされている言語を暗黙的に検出します。 この構成では、CodeQL は、コンパイル型言語である C/C++、C#、Go、Java、Kotlin、および Swift のうち、ソース ファイルの数が最も多い言語のみを解析します。 ワークフローを編集し、解析する言語を指定するマトリックスを追加してください。 既定の CodeQL 分析ワークフローでは、このようなマトリックスが使用されます。

以下はワークフローからの抜粋で、まず言語を指定するジョブ戦略におけるマトリクスの使用法を示し、次に「Initialize CodeQL」のステップで各言語を参照しています。

jobs:
  analyze:
    permissions:
      security-events: write
      actions: read
    ...
    strategy:
      fail-fast: false
      matrix: 
        language: ['csharp', 'cpp', 'javascript'] 

    steps:
    ...
      - name: Initialize CodeQL
        uses: github/codeql-action/init@v2
        with:
          languages: ${{ matrix.language }}

ワークフローの編集方法について詳しくは、「コード スキャン用の高度なセットアップのカスタマイズ」をご覧ください。