Подтвердить что ты не робот

Очистка кеша пакета при развертывании до героку

Всякий раз, когда я развертываю в Heroku (приложение Ruby on Rails с использованием драгоценного камня heroku_san), он говорит следующее:

Cleaning up the bundler cache.
Would have removed sitemap_generator (2.0.1.pre1)
Would have removed newrelic_rpm (3.5.5.38)
Would have removed httparty (0.10.0)
Would have removed thor (0.16.0)
Would have removed ckeditor (3.7.1)
Would have removed fog (1.8.0)
Would have removed rake (0.9.2.2)
Would have removed dalli (2.6.0)

(или любой другой старый камень, который я мог бы иметь из предыдущих развертываний) Как я могу очистить кеш поставщика в приложении Heroku? Я попытался запустить:

heroku run bundle clean --force

но это не помогло.

Может ли кто-нибудь сказать мне, как очистить кеш пакетов в Heroku? Или если я должен игнорировать это сообщение?

4b9b3361

Ответ 1

Это связано с недавно внесенным изменением в Bundler. Мы (Heroku) должны отслеживать, почему он считает, что он работает в режиме --dry-run и исправить его.

Тем временем это не является вредным и не должно вызывать никаких проблем. К сожалению, нет способа очистить кеш вручную, если вы беспокоитесь об этом.

Ответ 2

Я также получаю это на каждом приложении Heroku, которое я когда-либо использовал, и еще не испытывал проблем.

Вот почему я думаю, что вам не о чем беспокоиться:

  • Наличие кучи сохраненных драгоценных камней на их сервере не должно замедлять ваше приложение. Черт, даже если вы бросили кучу драгоценных камней, которые вам не нужны в вашем Gemfile, заметные хиты производительности, скорее всего, будут связаны с первоначальным временем запуска вашего приложения и последующим использованием памяти. И если эти драгоценные камни не находятся в вашем Gemfile, производительность, попадающая в ваше приложение, должна быть равна нулю.
  • В то время как у Heroku есть мягкий предел в 100 МБ для пули на бесплатной учетной записи, мои собственные анекдотические данные говорят о том, что это не включает драгоценные камни, которые вы удалили из своего Gemfile (что имеет смысл, если дикая спекуляция ниже правильная).

И здесь дикие предположения о том, почему Heroku не чистит кеш поставщика:

Память дороже пространства на жестком диске, поэтому, хотя большинство камней могут занимать тривиальное пространство на жестком диске, они могут складываться, если тонна драгоценных камней должна быть загружена в память. Однако, если камень не находится в вашем Gemfile, он не будет в памяти. И очень вероятно, что дороже удалить (и, возможно, позже повторно загрузить) драгоценный камень, чем хранить его на диске, на случай, если вы позже передумаете и захотите повторно добавить его в свой Gemfile.