IBM Cloud Docs
エビデンス・サマリー

エビデンス・サマリー

エビデンス要約とは、一連の成果物に関連するエビデンス部分の集合を指します。 現在、このパイプラインは 2 つのアプローチ ( v1v2) を使用してエビデンスを収集し、要約します。 この目的は、 v1v2 に置き換えられることです。

v2 エビデンス収集

エビデンス・ロッカーは、3 種類のエンティティー ( 「資産」「エビデンス」、および 「添付ファイル」) を保管します。 詳しくは、 v2 エビデンス・フォーマット を参照してください。

資産

アセットとは、リポジトリー内の Git コミットや Docker イメージなど、テストおよびスキャンが可能な対象を表します。

エビデンス

証拠の一部は、スキャンまたはテストの結果を表します。 エビデンスは常に、少なくとも 1 つの資産に接続されます。 複数の資産が許可されます。 例えば、単一のエンドツーエンド・テスト・スイートで複数の資産を一緒にテストすることが考えられます。

アタッチメント

添付ファイルは、エビデンスに添付できる任意のデータです。 これは通常、スキャンまたはテストを実行したツールの未加工出力です。

証拠の収集

collect-evidence スクリプトを使用して、証拠を収集します。

エビデンス・サマリー

v1 とは対照的に、 v2 のエビデンスはフラット階層に保管され、各エビデンスは独自のハッシュによって識別されます。 このハッシュは、保全性保護の層を提供します。 つまり、エビデンス・コンテンツの変更を検出できます。 各エビデンスは 1 つ以上の資産に関連しているため、エビデンス要約アルゴリズムは、( v1 のパイプライン実行 ID ではなく) 資産に基づいて関連するエビデンスをディスカバーします。

証拠は、以下に基づいて要約されています。

  • パイプライン実行 ID: パイプライン実行 ID に基づいて、有効範囲が決定されます。 スコープは、エビデンスのコンテキストを設定します。
  • 資産: 資産は、厳密なテストおよびスキャンの対象となる基本的なエンティティーです。 これらのアセットには、 Docker イメージへのリポジトリー内の既存の Git コミットなど、さまざまな形式が含まれます。

CI パイプラインでは、以下に基づいてエビデンスが要約されます。

  • スコープは、エビデンス要約の 現在の CI 実行pipeline_run_id です。
  • アセット・リストは、その実行で保存されたすべての成果物をリストする list_artifact コマンドを使用して計算されます。

CD パイプラインでは、以下に基づいて証拠が要約されています。

  • 各在庫アイテムの provenance フィールドは、要約の asset として機能します。 以下の 3 つのタイプの資産リストがあります。

    • 差分資産リスト: デプロイメント環境内の最後のデプロイメントから 変更された 資産。
    • 非差分資産リスト: デプロイメント環境内の最後のデプロイメントから 変更されていない 資産。
    • フル・アセット・リスト: すべてのインベントリー・エントリーからデプロイメント環境に対応するアセット。
  • 各在庫アイテムの pipeline_run_id フィールドは、要約の scope として機能します。

    • インベントリー・エントリーの pipeline_run_id から読み取られた CI スコープ。
    • 現行の pipeline_run_id を CD パイプラインの有効範囲として指定します。

CC パイプラインでは、以下に基づいて証拠が要約されています。

  • 要約の asset としての各在庫部品の「 provenance 」フィールド。 すべてのインベントリー・エントリーから、デプロイされた環境の最新のものに対応する資産。

  • 各在庫部品の pipeline_run_id フィールドは、要約の scope として機能します。

    • インベントリー・エントリーの pipeline_run_id から読み取られた CI スコープ。
    • インベントリーの終了 で作成された CD-pipeline_run_id タグから読み取られた CD スコープ。
    • CC パイプライン・スコープとしての現在の pipeline_run_id

詳しくは、 インベントリー を参照してください。 実動前の証拠に基づく prod 要約について詳しくは、 証拠要約の収集 を参照してください。

v2 エビデンス要約は、デフォルトで計算されます。

v1 エビデンス・コレクション

証拠は、パイプライン実行ごとにロッカーで編成されます。つまり、パイプライン実行で収集されたすべての証拠は、互いに隣接して保管されます。 この組織により、パイプライン実行 ID がある場合に証拠収集が容易になります。 ただし、Docker イメージに関連するエビデンスなど、資産に関連するエビデンスを特定することは困難です。 この問題は、証拠が複数のパイプライン実行 (CI パイプライン、ステージング CD パイプライン、実動 CD パイプラインなど) にまたがる可能性があるためです。 詳しくは、 v1 エビデンス・フォーマット を参照してください。

これらの問題のため、 v1 の証拠は v2 に置き換えられます。

v1 のエビデンス・コレクションは、レガシー・エビデンス・コレクションです。 v1 のエビデンス収集をオプトアウトするには、 レガシーをオフにする v1 エビデンス収集 を参照してください。