Azure パイプライン
Qodana スキャンは、Qodana でコードをスキャンするために Qodana Azure パイプライン拡張(英語)内にパックされた Azure パイプラインタスクです。
使用箇所
基本構成
Qodana Azure パイプライン拡張(英語)を組織にインストールした後、Qodana スキャンタスクを構成するには、azure-pipelines.yml
ファイルを編集します。
このジョブをトリガーするかどうかは、Azure Pipelines で使用しているリポジトリの種類によって異なります。
このタスクは任意の OS および x86_64/arm64 CPU で実行できますが、エージェントに Docker がインストールされている必要があります。また、Qodana Docker イメージのほとんどは Linux ベースであるため、docker デーモンは Linux コンテナーを実行できる必要があります。
Qodana クラウド
結果を Qodana クラウドに送信するには、ビルド構成で QODANA_TOKEN
環境変数を指定するだけです。
Azure Pipelines UI で、
QODANA_TOKEN
シークレット変数を作成し、プロジェクトトークンをその値として保存します。Azure パイプラインファイルで、
QODANA_TOKEN
変数をQodanaScan
タスクのenv
セクションに追加します。
トークンが分析用に設定されると、すべての Qodana スキャンジョブの結果が Qodana クラウドプロジェクトにアップロードされます。
SARIF SAST スキャンタブ
Azure DevOps UI のスキャンタブに Qodana レポートの概要を表示するには、Microsoft DevLabs の SARIF SAST スキャンタブ(英語)拡張機能をインストールします。
![Azure スキャンタブ Azure Scans Tab](https://user-images.githubusercontent.com/13538286/160094802-df9b86b6-be53-45c1-a70c-8edfcde9412a.png)
構成
おそらく args
以外のオプションは必要ありません。1 つのワークフローで複数の Qodana スキャンジョブを構成する場合は、他のすべてのオプションが役に立ちます。
名前 | 説明 | デフォルト値 |
---|---|---|
| 追加の Qodana CLI | - |
| 解析結果を保存するディレクトリ。オプション。 |
|
| Qodana の結果をアーティファクトとしてジョブにアップロードします。オプション。 |
|
| qodana.sarif.json を qodana.sarif アーティファクトとしてジョブにアップロードします。オプション。 |
|
| 結果のアップロードに使用される Qodana 結果アーティファクト名を指定します。オプション。 |
|
| Qodana キャッシュを保存するディレクトリ。オプション。 |
|
関連ページ:
![](https://resources.jetbrains.com/help/img/qodana/2024.1/qc-create-project.png)
プロジェクト
プロジェクトは、Qodana レポートを蓄積します。各プロジェクトは、プロジェクトトークンによって一意に識別されます。このトークンは、Qodana レポートのアップロードに使用されます。プロジェクトの作成:オンボーディング段階では、Qodana Cloud がすでに最初のプロジェクトの作成を支援しているため、これらの手順は追加のプロジェクトを作成する場合にのみ適用されます。チームページで、ボタンをクリックします。以下で説明するウィザードの手順に従います。Qodana Cloud からアクセスでき...
![](https://pleiades.io/icons/jetbrains_logo.png)
CI システムとの統合
すべての Qodana リンターは Docker イメージとして利用できるため、任意の CI/CD ツールに統合して実行できます。Docker コンテナーの実行方法の詳細については、CI/CD システムのドキュメントを参照してください。いくつかのツールについては、ネイティブソリューションを提供しています。これまでに、次の CI/CD ツールの統合ガイドを開発しました。Azure パイプライン、Bitbucket クラウド、CircleCI、GitHub アクション、GitLab CI/CD、Jenk...