build avoidance とは何か?
build avoidance は、あるターゲットの入力が変わっていないことを build システムが検出し、再 build する代わりに以前生成した出力を再利用する戦略です。再利用が常に正しくなるよう、正確な入力ハッシュに依存します。うまく機能すれば、大きな pipeline のほとんどをキャッシュヒットに変えられます。
なぜ重要か
ほとんどの CI 実行はコードベースの一部にしか触れませんが、素朴な pipeline はすべてを再 build します。build avoidance は、変更が実際に必要とする作業だけを行うことで、実時間と runner コストを削減します。従量課金のマネージド runner では、再 build するターゲットが減ることが、そのまま課金される minutes の削減につながります。
何に依存するか
- すべてのターゲットに対する正確な入力ハッシュ
- 実行の間で保持されるキャッシュ
- 再利用が正しく保たれる決定論的な build
関連ガイド
What Is a Cache Key?A cache key is the identifier that determines which cached entry a lookup retrieves, typically derived from t…
What Is a Deterministic Build?A deterministic build produces the same output from the same inputs every time, with no run-to-run variation…
What Is a Build Cache?A build cache stores intermediate build outputs so unchanged work can be reused across runs instead of recomp…