Подтвердить что ты не робот

Контейнерные активы precompile disable, похоже, не работают

Я отключил активы конвейера, предварительно скомпилированные. Для этого у меня есть следующая строка в моем config/application.rb и config/environment/development.rb

config.assets.enabled = false

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

$cap development deploy --trace

DEBUG [8b4a938e] Command: cd /home/ec2-user/capistrano-3/a/releases/20140122054901 && ( RAILS_ENV=development ~/.rvm/bin/rvm 2.0.0-p353 do bundle exec rake assets:precompile )
DEBUG [8b4a938e]    /home/ec2-user/.rvm/rubies/ruby-2.0.0-p353/bin/ruby /home/ec2-user/capistrano-3/ano_dev/shared/bundle/ruby/2.0.0/bin/rake assets:precompile:all RAILS_ENV=development RAILS_GROUPS=assets
DEBUG [8b4a938e]    
INFO [8b4a938e] Finished in 8.812 seconds with exit status 0 (successful).

Что мне еще нужно сделать, чтобы избежать компиляции активов. Он также дает

4b9b3361

Ответ 1

Что в вашем Capfile?

Если у вас

require 'capistrano/rails'

то он будет прекомпилировать ваши активы, потому что capistrano/rails также включает в себя связки, рельсы/активы и рельсы/миграции.

https://github.com/capistrano/rails/blob/master/lib/capistrano/rails.rb https://github.com/capistrano/rails/blob/master/lib/capistrano/tasks/assets.rake

Если вы все еще хотите связки и миграции, но не активы, вы можете включить их отдельно в свой Capfile, просто убедитесь, что вам еще не требуется "capistrano/rails":

require 'capistrano/bundler'
require 'capistrano/rails/migrations'

Ответ 2

В моем случае наша команда использует общий камень для всех наших приложений Rails, а для общего драгоценного камня требуется "capistrano/rails" (таким образом, приводя компиляцию активов). Для приложения, которое не справлялось с этим, все, что мы сделали, было добавлено:

set :assets_roles, []

в config/deploy.rb, и это заставляет capistrano-rails пропускать предварительную компиляцию активов.