Развертывание героку завершается неудачно с помощью fog-aws (говорит, что форматадор "удален")

У меня есть веб-сайт, загружающий изображения в AWS с использованием драгоценного камня fog-aws. Все работает нормально, когда я запускаю его локально, но он не будет развертываться на героку. Стандартная сборка heroku/ruby, последние версии всего:

ruby 2.5.1, рельсы 5.2.2, драгоценный камень 'carrierwave', '1.3.1' драгоценный камень 'fog-aws', '3.3.0'

Пробовал: 1) Конечно, удаляя файл Gemfile.lock и устанавливая комплект несколько раз. 2) Явно включая formatador, используя более старые версии (я не думаю, что сообщение об ошибке корректно, поскольку formatador 0.2.5 существует, и я могу установить это как локально, так и на heroku) 3) Использование "fog" вместо "fog-aws" (выдает похожие ошибки с "unf" и включает в себя массу ненужных зависимостей)

remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rails
remote: -----> Using Ruby version: ruby-2.5.1
remote: -----> Installing dependencies using bundler 1.15.2
remote:        Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
remote:        Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
remote:        Fetching gem metadata from https://rubygems.org/........
remote:        Fetching version metadata from https://rubygems.org/..
remote:        Fetching dependency metadata from https://rubygems.org/.
remote:        Your bundle is locked to formatador (0.2.5), but that version could not be found
remote:        in any of the sources listed in your Gemfile. If you haven't changed sources,
remote:        that means the author of formatador (0.2.5) has removed it. You'll need to
remote:        update your bundle to a different version of formatador (0.2.5) that hasn't been
remote:        removed in order to install.
remote:        Bundler Output: Warning: the running version of Bundler (1.15.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
remote:        Fetching gem metadata from https://rubygems.org/........
remote:        Fetching version metadata from https://rubygems.org/..
remote:        Fetching dependency metadata from https://rubygems.org/.
remote:        Your bundle is locked to formatador (0.2.5), but that version could not be found
remote:        in any of the sources listed in your Gemfile. If you haven't changed sources,
remote:        that means the author of formatador (0.2.5) has removed it. You'll need to
remote:        update your bundle to a different version of formatador (0.2.5) that hasn't been
remote:        removed in order to install.

1 ответ

Догадаться; просто нужно в RTFM!

Мне нужно было "потребовать" fog/aws "в верхней части config/initializer /fog.rb. Работал локально без него, но вызывал поведение выше при развертывании на героку. Я добавил эту строку, и это сработало.

Другие вопросы по тегам