Skip to main content

コード品質の問題の CodeQL 検出

CodeQL を利用した Code Quality の分析がどのように機能するか、使用されるワークフロー、プルリクエストで報告されるステータスチェックに関する情報。

メモ

GitHub Code Quality は現在 パブリック プレビュー にあり、変更される可能性があります。 パブリック プレビュー の間、Code Quality は課金されませんが、Code Quality スキャンでは GitHub Actions 分が消費されます。

CodeQL 検出

Code Quality は、CodeQL を使用して、pull requests と既定のブランチに対してルールに基づいた分析を行います。 各ルールは、 CodeQL でクエリとして書き込まれ、 GitHub Actions を使用して実行されます。

ルールは、GitHub とオープン ソース開発者の両方によって継続的に改良されています。 https://github.com/github/codeqlを参照してください。

コード品質分析に使用されるワークフロー

Code Quality のすべてのワークフローの実行履歴は、あなたのリポジトリの [アクション] タブで確認できます。 動的ワークフローは"コード品質" と呼ばれます。

既定では、コード品質 ワークフローは標準の GitHub ランナーで実行されますが、特定のラベルを持つランナーを使用するように Code Quality を構成できます。 これらはGitHub またはセルフホステッドでホストできます。

組織でプライベート レジストリのキャッシュを構成している場合は、依存関係の解決に使用するコード品質分析に使用できます。

詳細については、以下を参照してください。

  •           [AUTOTITLE](/code-security/code-quality/how-tos/enable-code-quality)
    
  •           [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/giving-org-access-private-registries#code-quality-access-to-private-registries)
    

プルリクエストのステータスチェック

プル要求でコード品質分析を実行すると、プル要求の下部にある [チェック] セクションに "CodeQL - コード品質 / Analyze" チェックが表示されます。

スキャンによって識別されたコードの問題は、プル要求のコメントで報告されます。 コメントは github-code-quality[bot] によって作成され、Copilotの自動修正 候補が含まれています。

状態チェックの失敗

ワークフローの実行に失敗しました。 たとえば、アクションのための時間予算が使い果たされた場合です。 エラーを診断するには、ログの表示を参照してください

マージがブロックされました: コード品質に関する問題が検出されました

スキャンによって、リポジトリのコード品質分岐規則によって設定された品質ゲートを超える問題がコードで検出されました。 pull request をマージする前に、これらの問題を解決する必要があります。 「pull request でのブロックの解決」を参照してください。