Ошибка после определения конфигурации Rails на Heroku - PullRequest
1 голос
/ 25 сентября 2019

Мое приложение rails работает локально, однако у меня возникают проблемы при развертывании на Heroku.Похоже, что он прекомпилируется нормально, но я получаю стек ошибок здесь:

remote: -----> Detecting rake tasks
remote: -----> Preparing app for Rails asset pipeline
remote:        Running: rake assets:precompile
remote:        Yarn executable was not detected in the system.
remote:        Download Yarn at https://yarnpkg.com/en/docs/install
remote:        Asset precompilation completed (1.79s)
remote:        Cleaning assets
remote:        Running: rake assets:clean
remote: -----> Detecting rails configuration
remote:        $ rails runner "begin; puts %Q{heroku.detecting.config.for.assets.compile=#{Rails.application.config.try(:assets).try(:compile)}}; rescue => e; puts e; puts e.backtrace; end; begin; puts %Q{heroku.detecting.config.for.action_dispatch.x_sendfile_header=#{Rails.application.config.try(:action_dispatch).try(:x_sendfile_header)}}; rescue => e; puts e; puts e.backtrace; end; begin; puts %Q{heroku.detecting.config.for.active_storage.service=#{Rails.application.config.try(:active_storage).try(:service)}}; rescue => e; puts e; puts e.backtrace; end;"
remote:        /tmp/build_e5c8ea775fe1792a905edb1b8e4870ab/vendor/bundle/ruby/2.6.0/gems/activesupport-5.2.1/lib/active_support/message_encryptor.rb:206:in `rescue in _decrypt': ActiveSupport::MessageEncryptor::InvalidMessage (ActiveSupport::MessageEncryptor::InvalidMessage)
remote:        	from /tmp/build_e5c8ea775fe1792a905edb1b8e4870ab/vendor/bundle/ruby/2.6.0/gems/activesupport-5.2.1/lib/active_support/message_encryptor.rb:183:in `_decrypt'
remote:        	from /tmp/build_e5c8ea775fe1792a905edb1b8e4870ab/vendor/bundle/ruby/2.6.0/gems/activesupport-5.2.1/lib/active_support/message_encryptor.rb:157:in `decrypt_and_verify'

Есть мысли?Спасибо!

1 Ответ

2 голосов
/ 25 сентября 2019

Ошибка - результат того, что Heroku пропустил главный ключ для расшифровки файла учетных данных.Создайте переменную RAILS_MASTER_KEY ENV., Rails обнаружит это автоматически и использует его в качестве главного ключа для расшифровки.

Для герою: $ heroku config:set RAILS_MASTER_KEY=<your-master-key-here>

Это очень хороший пост в блоге , чтобы понять, как работает API учетных данных rails

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...