セカンダリ ストレージのみをキャッシュとして使用し、プライマリ ストレージを完全にスキップするように Ccache を構成するにはどうすればよいですか?
私たちの CI パイプラインは、コンテナーを使用して、C++ アプリケーションをコンパイルおよびビルドします。Ccache を使用してビルド時間を短縮し、キャッシュをすべてのパイプラインで共有したいと考えています。このためには、Ccache のセカンダリ ストレージ オプションが理想的ですが、プライマリ ストレージ (ローカル キャッシュ) を完全にスキップするように Ccache を構成する方法がわかりません。
Ccache がすぐにセカンダリ ストレージにアクセスできるようにしたいのですが、ローカル キャッシュが最初にキャッシュ ミスを生成した場合でも問題ないと思います。理想的には、そこで時間を無駄にしないように、ローカル キャッシュは更新されません。もちろん、ミスが発生するたびにセカンダリストレージが更新されることは必須です。
と設定しようと思っていたの--max-files
ですが、それは特別な値で、制限をまったく設定しません。これらのオプションを に設定するとうまくいくかもしれませんが、不必要に Ccache のクリーンアップ ロジックをトリガーし、時間を無駄にします。--max-size
0
1
構成オプションにも気付きましたread_only
が、ドキュメントには「...しかし、キャッシュバックエンドに新しい結果を追加しません」と明記されています。これは、セカンダリストレージが更新されないことを意味します。