У меня возникли проблемы с получением постоянной выгоды от ccache
в моих сборках конвейера jenkins. Я устанавливаю CCACHE_BASEDIR
в родительский каталог моего текущего каталога сборки (это получается что-то вроде /opt/jenkins/workspace
). Учитывая этот базис, я бы ожидал, что все сборки PR/ветки, которые имеют общий родитель, смогут находить попадания в кеш, но, увы, этого не происходит. Я действительно вижу попадания в кеш для последующих сборок в заданном каталоге (например, если я вручную перестраиваю конкретный PR), что означает, что CCACHE_BASEDIR
работает не так, как я ожидал.
Для дальнейшей диагностики я попытался установить CCACHE_LOGFILE
, и хотя этот файл создается сборкой, он фактически пуст (содержит только две строки, указывающие версию ccache).
Может ли кто-нибудь предложить конкретные настройки или методы, которые помогли получить максимальную пользу от ccache
в конвейерах jenkins, или другие вещи, чтобы попытаться диагностировать проблему? Что может вызвать пустой файл журнала ccache?
Я запускаю ccache
3.3.4.
ccache -s
, чтобы узнать, кэширует ли он файлы. - person Florian Castellane   schedule 14.02.2018