Конфигурация Rails не удалась при развертывании Heroku - PullRequest
1 голос
/ 14 марта 2019

Я прочитал все комментарии и проблемы, которые я могу найти здесь, но ни один из них, кажется, не относится к моей ситуации.У меня есть серверная часть Ruby on Rails с интерфейсом React, который развертывался нормально, пока я не добавил возможность администратора обновлять базы данных через файл CSV с помощью ActiveRecord.

Когда я нажимаю на Heroku, я получаю два предупреждения:

###### ПРЕДУПРЕЖДЕНИЕ: Ошибка при обнаружении конфигурации направляющих
##### ПРЕДУПРЕЖДЕНИЕ: Мыобнаружил, что некоторые двоичные зависимости, необходимые для использования всех функций предварительного просмотра Active Storage, отсутствуют в этой системе.

Я просмотрел предоставленные статьи Heroku об активном хранилище в Heroku, но я до сих пор нетв состоянии решить проблему.

Пытаясь устранить неполадки на консоли Rails, я получаю следующую ошибку, которая может быть виновником:

/ app / vendor / bundle / ruby ​​/ 2.5.0 / gems /aws-partitions-1.144.0 / lib / aws-partitions / endpoint_provider.rb: 82: в блоке в partition_matching_region: невозможно загрузить Rails.config.active_storage.service: (NoMethodError) неопределенный метод соответствует nil: NilClass

Есть ли у кого-нибудь понимание этой проблемы?Я сталкиваюсь с тем же, что обнаруживают другие: некоторые из этих сообщений об ошибках не самые проницательные для меня.Спасибо!

Ответы [ 3 ]

1 голос
/ 15 марта 2019

Вам необходимо установить пакет Heroku ActiveStorage Previews Buildpack:

heroku buildpacks:add -i 1 https://github.com/heroku/heroku-buildpack-activestorage-preview

При этом будут установлены бинарные инструменты, необходимые для предварительного просмотра активов. Более подробная информация доступна здесь:

0 голосов
/ 04 июня 2019

Еще один способ решения этой проблемы - сначала получить подробный журнал ошибок с помощью этой команды:

heroku run rails console

Если ошибок нет, вы войдете в интерактивную оболочку Ruby, в противном случае вы увидите сообщение о невозможности загрузки.ошибка службы активного хранилища.

Если вы используете S3, вам необходимо установить ключ доступа, секретный ключ доступа, имя сегмента и область сегмента:

SECRET_KEY_BASE: xxx-xxx-xxxxxx-xxx-xxxxxx-xxx-xxx

AWS_ACCESS_KEY_ID: xxx-xxx-xxx

AWS_SECRET_ACCESS_KEY: xxx-xxx-xxxxxx-xxx-xxx * 1013_ * BUC: S: 1014 * 1014xxx-xxx-xxx

AWS_BUCKET_REGION: us-east-1

Затем загрузите переменные среды в Heroku с помощью: figaro heroku:set -e production

0 голосов
/ 14 марта 2019

https://github.com/aws/aws-sdk-ruby/issues/1240 выглядит как ваша проблема:

Это означает, что вы не настроили регион. Чтобы настроить регион, задайте переменную среды AWS_REGION или передайте ее в качестве параметра. Например:

key = OpenSSL::PKey::RSA.new(1024)
s3 = Aws::S3::Encryption::Client.new(encryption_key: key, region: "us-east-1") # or the region you are using
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...