CI/CD パイプライン差分解析の管理
差分解析では、kwadmin を使用してロードされるリファレンスプロジェクト解析に関する新しい指摘のレポートが作成されます。差分解析は通常、選択されたファイル内の指摘を検出するため、アプリケーションのサブセット (たとえば、変更セットなど) に対して実行されます。
リファレンスプロジェクト解析の結果を [ビルド] タブを使用して管理するのと同じように、CI/CD パイプライン差分解析は Validate ポータルの [CI ビルド] タブを使用して管理できます。CI ビルドを実行することで、サーバービルドを実行する前に指摘を確認し、それらの指摘をサーバーの指摘と同じ方法で管理できるようになります。kwciagent を実行して、指摘を Validate と同期させることができます。そうすれば、完全なビルドを実行した場合よりもはるかに早く指摘を把握できます。CI ビルドは、サーバービルドと共に機能するので、Jenkins など、お好きなテストツールに統合することもできます。
Restriction: CI ビルドは、グループ化を有効にした状態では機能しません。
kwciagent を使用した CI ビルドの作成
[CI ビルド] タブにアクセスするには、最初に、kwciagent を使用して、差分解析を実行する継続的インテグレーションジョブを作成する必要があります。次の手順に従ってください。
- 最初に、kwinject を使用して、プロジェクトの build specification (ビルドスペック) を生成します。
kwinject make
- 次に、build specification (ビルドスペック) を kwciagent フォルダーに追加します。
kwciagent create -b kwinject.out --url http://localhost:8080/myproject
- 変更されたファイルのリストを作成します。たとえば、git を使用している場合は、解析で変更されたファイルのファイルパス (相対パスまたは絶対パス) を収集することができます。
git diff --name-only origin/master > diff_file_list.txt
- 最後に、変更されたファイルの差分解析を実行 (kwciagent を実行) します。--ci-build を指定して、その結果をポータルにロードします。
kwciagent run –-ci-build ci_build_1 @diff_file_list.txt
CI ビルド名の編集
特定の CI ビルドの詳細を編集するには、鉛筆アイコンを選択します。このダイアログから、CI ビルドの名前を編集することができます。ビルド名は、文字または数字で始まり、64 文字以内でなければなりません。ピリオド (.)、マイナス記号 (-)、アンパサンド (&)、ホワイトスペース、およびアンダースコアを使用できます。
Restriction: CI ビルドには数字のみの名前を付けないようにすることをお勧めします。
CI ビルドの削除
CI ビルドを削除するには、ごみ箱アイコンを選択します。CI ビルドは、いったん削除されると復元できません。そのため、確実に不要になった CI ビルドのみを削除してください。
CI ビルドリストのフィルター処理
[CI ビルド] ページの上部にある検索バーを使用して、CI ビルドリストをフィルター処理することができます。この機能は、CI ビルドのリストが長い場合にリスト内容を絞り込んで特定のビルドを見つけるのに役立ちます。検索の詳細については、Klocwork Static Code Analysis での検索を参照してください。
CI ビルドで見つかった指摘の管理
継続的インテグレーション環境のビルドの CI 解析が示した新しい指摘は、サーバービルドで見つかった場合と同じ方法で管理することができます。指摘は、必要に応じて修正、更新、または保留することができます。それから、ビルドを再び実行して、指摘が報告されなくなったこと、または予測どおりに修正されたことを確認してください。指摘の管理方法の詳細については、指摘の調査を参照してください。
また、Web API を使用して、CI に関する指摘の詳細の取得や、CI ビルドの管理などを行うこともできます。例については、指摘とメトリック API の例を参照してください。