Активы Heroku push rake внезапно перестают работать, используя прекомпиляцию - PullRequest
0 голосов
/ 06 марта 2019

Я получаю сообщение об ошибке, когда я делаю 'git push heroku master'.
Я компилирую ресурсы локально, используя:

rake assets:precompile RAILS_ENV=production --trace

Дело в том, что это работало регулярно в течение последних нескольких месяцев, и только вчера что-то решило потерпеть неудачу.

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

rake assets:clobber --trace
rake assets:precompile RAILS_ENV=production --trace

Не уверен, как это отладить. Моя последняя регистрация выглядит разумной (то есть я не редактировал конфигурационные файлы или rakefile и т. Д.). Я изменил некоторые изображения в формате png (новые изображения, изменив размеры изображений), но предварительная компиляция локально не выдает никаких ошибок.

Вот начало сообщения об ошибке.

remote: -----> Detecting rails configuration
remote: -----> Detecting rake tasks
remote:
remote:  !
remote:  !     Could not detect rake tasks
remote:  !     ensure you can run `$ bundle exec rake -P` against your app
remote:  !     and using the production group of your Gemfile.
remote:  !     /tmp/build_a612be38eac01922e9ad7a0a8c37a351/vendor/bundle/ruby/2.2.0/gems/autoprefixer-rails-9.4.10/lib/autoprefixer-rails/processor.rb:83: warning: else without rescue is useless
remote:  !     rake aborted!
remote:  !     SyntaxError: /tmp/build_a612be38eac01922e9ad7a0a8c37a351/vendor/bundle/ruby/2.2.0/gems/autoprefixer-rails-9.4.10/lib/autoprefixer-rails/processor.rb:79: syntax error, unexpected '.'
remote:  !     from ||= if defined? Rails&.respond_to?(:root) && Rails&.root
remote:  !     ^
remote:  !     /tmp/build_a612be38eac01922e9ad7a0a8c37a351/vendor/bundle/ruby/2.2.0/gems/autoprefixer-rails-9.4.10/lib/autoprefixer-rails/processor.rb:79: syntax error, unexpected '.'
remote:  !     from ||= if defined? Rails&.respond_to?(:root) && Rails&.root
remote:  !     ^

1 Ответ

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

Досадно, что эта проблема исчезла после целого дня, проведенного в попытках ее исправить / исследовать.На следующий день все заработало, и я не знаю почему.Последнее, что я сделал, это закомментировал строку в моем production.rb, собрал все, а затем раскомментировал его обратно. Не уверен, был ли он вообще связан.К вашему сведению строка была:

config.assets.precompile += ['landing.js', 'landing.css']
...