Ошибка обнаружения SQLite при развертывании моего кода в heroku

Я сделал изменения в файле gem, db.yml, чтобы развернуть мой код в heroku как:

Gem файл:

group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a 
debugger 
 console
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
# Adds support for Capybara system testing and selenium driver
 gem 'capybara', '~> 2.13'
 gem 'rspec-rails', '~> 3.7'
 gem 'factory_bot_rails'
 gem 'selenium-webdriver'
 gem 'bullet'
gem 'web-console'
gem 'faker'
end

group :development do
 gem 'sqlite3'
end
group :production do
 gem 'pg'
end

db.yml

 production:
 adapter: postgresql
 encoding: unicode
 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
 database: production

Я внес эти изменения, но все равно отображается ошибка: "Не удалось установить гемы через Bundler.Detected sqlite3 gem, который не поддерживается в Heroku". Есть ли что-то, что я должен изменить для развертывания моего кода в heroku?

1 ответ

Основано на: https://devcenter.heroku.com/articles/bundler-configuration документации

Вы можете исключить группу разработки из конфигурации вашего упаковщика следующим образом:

$ heroku config:set BUNDLE_WITHOUT=development:test:ci

которая решит вашу проблему, так как не будет связывать sqlite3 драгоценный камень.

Примечание: я настоятельно рекомендую использовать PostgreSQL во время разработки. Поддержание паритета между средами разработки и развертывания предотвращает появление незначительных ошибок из-за различий между средами.

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