hermetic buildとは?
hermetic buildは明示的に宣言された入力だけに依存し、周囲のホスト環境、ネットワーク、時計から封じられているビルドです。宣言されていないものが漏れ込むことがないため、ビルドはどのマシンでも同じ結果を生成します。hermeticityは安全なremote cachingとreproducible buildの前提条件です。
なぜ重要か
ホストのPATH、環境変数、ライブなネットワークから密かに取り込むビルドは脆弱で移植性がなく、マシンをまたいで安全にキャッシュできません。hermetic buildは出力を宣言された入力の純粋な関数にし、それがremote cacheやprovenance attestationを信頼できるものにします。
関連する概念
- reproducible buildはhermeticityの検証可能な成果である
- ビルドツールはそれを強制するためにアクションをsandbox化する
- lockfileは依存関係の入力を正確にピン留めする
関連ガイド
What Is a Reproducible Build?A reproducible build produces bit-for-bit identical output every time from the same source, letting anyone in…
What Is a Remote Cache?A remote cache stores build outputs in a shared, networked location so they can be reused across machines, CI…
What Is a Lockfile?A lockfile records the exact resolved versions and hashes of every dependency, so installs are deterministic…