CI/CD パイプライン差分解析の管理

差分解析では、kwadmin を使用してロードされるリファレンスプロジェクト解析に関する新しい指摘のレポートが作成されます。差分解析は通常、選択されたファイル内の指摘を検出するため、アプリケーションのサブセット (たとえば、変更セットなど) に対して実行されます。

リファレンスプロジェクト解析の結果を [ビルド] タブを使用して管理するのと同じように、CI/CD パイプライン差分解析は Validate ポータルの [CI ビルド] タブを使用して管理できます。CI ビルドを実行することで、サーバービルドを実行する前に指摘を確認し、それらの指摘をサーバーの指摘と同じ方法で管理できるようになります。kwciagent を実行して、指摘を Validate と同期させることができます。そうすれば、完全なビルドを実行した場合よりもはるかに早く指摘を把握できます。CI ビルドは、サーバービルドと共に機能するので、お好きなテストツールに統合することもできます。

CI ビルドは、グループ化を有効にした状態では機能しません。

このトピックの内容:

kwciagent を使用して CI ビルドを作成する

[CI ビルド] タブにアクセスするには、最初に、kwciagent を使用して、差分解析を実行する継続的インテグレーションジョブを作成する必要があります。次の手順に従ってください。

  1. 最初に、kwinject を使用して、プロジェクトの build specification (ビルドスペック) を生成します。
    kwinject make
  2. 次に、build specification (ビルドスペック) を kwciagent フォルダーに追加します。
    kwciagent create -b kwinject.out --url http://localhost:8080/myproject
  3. 変更されたファイルのリストを作成します。たとえば、git を使用している場合は、解析で変更されたファイルのファイルパス (相対パスまたは絶対パス) を収集することができます。
    git diff --name-only origin/master > diff_file_list.txt
  4. 最後に、変更されたファイルの差分解析を実行 (kwciagent を実行) します。--ci-build を指定して、その結果をポータルにロードします。
    kwciagent run –-ci-build ci_build_1 @diff_file_list.txt

CI ビルド名を編集する

特定の CI ビルドの詳細を編集するには、鉛筆アイコンを選択します。このダイアログから、CI ビルドの名前を編集することができます。ビルド名は、文字または数字で始まり、64 文字以内でなければなりません。ピリオド (.)、マイナス記号 (-)、アンパサンド (&)、ホワイトスペース、およびアンダースコアを使用できます。

CI ビルドには数字のみの名前を付けないようにすることをお勧めします。

CI ビルドの削除

CI ビルドを削除するには、ごみ箱アイコンを選択します。CI ビルドは、いったん削除されると復元できません。そのため、確実に不要になった CI ビルドのみを削除してください。

CI ビルドリストをフィルター処理する

[CI ビルド] ページの上部にある検索バーを使用して、CI ビルドリストをフィルター処理することができます。この機能は、CI ビルドのリストが長い場合にリスト内容を絞り込んで特定のビルドを見つけるのに役立ちます。検索の詳細については、Validate by Perforce での検索を参照してください。

CI Quality Gate を構成および設定する

CI Quality Gate を使用すると、CI ビルドがそれに含まれている問題に基づいて合格となるか失格となるか判断される基準を定義することができます。

Validate では、プロジェクトレベルおよびストリームレベルで Quality Gate を構成することができます。

  1. [プロジェクト]/[ストリーム] > [CI ビルド] に移動します。

  2. 検索バーの下の [Quality Gate] フィールドで、[指摘] ページで使用されるのと同じ検索構文 (分類基準フィルター、ステータスフィルター、参照フィルターなど) を使用してクエリを定義します。

  3. 鉛筆アイコンを使用して、Quality Gate の値を編集します。

  4. kwciagent run --ci-build を実行します。

  5. Quality Gate のステータスと情報が設定されている場合は、それらが該当のビルドの下に表示されます。

さらに、任意の CI ビルドをクリックすると、適用されている Quality Gate 値がリンクと共に右側のパネルに表示されます。このリンクを選択すると、[指摘] ページが開き、その Quality Gate に関連するすべての欠陥を表示することができます。

注記:

  • CI Quality Gate を構成するには、プロジェクト管理者のパーミッションが必要です。

  • CI Quality Gate のデフォルト値は空です。

  • ストリームでは、手動で上書きされるまでは基本プロジェクトから継承されます。

CI ビルドで検出された指摘を管理する

継続的インテグレーション環境のビルドの CI 解析が示した新しい指摘は、サーバービルドで見つかった場合と同じ方法で管理することができます。指摘は、必要に応じて修正、更新、または保留することができます。それから、ビルドを再び実行して、指摘が報告されなくなったこと、または予測どおりに修正されたことを確認してください。指摘の管理方法の詳細については、指摘の調査を参照してください。

また、Web API を使用して、CI に関する指摘の詳細の取得や、CI ビルドの管理などを行うこともできます。例については、指摘とメトリック API の例を参照してください。