Reproducible Container Build - CI/CD用語集の定義
reproducible container buildは、同一の入力から毎回同一のバイト列を生成するため、公開されたイメージが本当に特定のソースから来たものかを検証できます。
reproducible container buildは、同じソースと入力からバイト単位で同一のイメージレイヤーを生成するもので、timestamp、ファイルの順序、ネットワーク取得などの非決定性の要因を制御する必要があります。
再現性は信頼できるsupply-chainのattestationの基盤です。誰でも同じバイト列を再buildできれば、そのprovenanceは検証可能になります。
非決定性の要因
埋め込まれたbuildのtimestamp、archive内の不安定なファイル順序、pinされていない依存関係の取得は、いずれも再現性を壊します。timestampの固定(SOURCE_DATE_EPOCH)、入力のソート、digestによるpinがそれらを取り除きます。
関連ガイド
Image Digest Pinning - CI/CD Glossary DefinitionImage Digest Pinning: Image digest pinning references a container image by its immutable content digest (for…
Provenance Predicate - CI/CD Glossary DefinitionProvenance Predicate: A provenance predicate is the structured claim inside a build attestation that records…
Build Fingerprint - CI/CD Glossary DefinitionBuild Fingerprint: A build fingerprint is a hash computed from a task’s inputs (source files, dependencies, t…