Обычно я делаю обновления для моего производственного приложения Ruby on Rails, и сегодня я обновил некоторые уязвимости безопасности с помощью gem-файлов, перенес их в репозиторий Github, а затем выполнил мастер git push heroku и получил следующие ошибки:
remote: -----> Preparing app for Rails asset pipeline
remote: Running: rake assets:precompile
remote: rake aborted!
remote: Devise.secret_key was not set. Please add the following to your Devise initializer:
remote:
remote: config.secret_key = '<hash>'
remote:
remote: Please ensure you restarted your application after installing Devise or setting the key....
remote: !
remote: ! Precompiling assets failed.
remote: !
Не уверен, существует ли связь между actionview -v 5.1.6.2, к которой я недавно обновился, и этой ошибкой, но я добавил и добавил, что config.secret_key = ...
, а затем зафиксировал его и отправил в репозиторий, а затем git push heroku master
и теперь я получаю это:
An unhandled lowlevel error occurred. The application logs may have details.
Журналы Heroku говорят:
#<RuntimeError: Missing `secret_key_base` for 'production' environment, set this value in `config/secrets.yml`>
Но у меня есть это в моем config/secrets.yml
:
# Do not keep production secrets in the unencrypted secrets file.
# Instead, either read values from the environment.
# Or, use `bin/rails secrets:setup` to configure encrypted secrets
# and move the `production:` environment over there.
production:
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>