2014-01-22 102 views
11

我已禁用管道資產預編譯。對於我在我的的config/application.rb中&配置/環境/ development.rb管道資產預編譯禁用似乎不起作用

config.assets.enabled = false 

以下行我試圖與Capistrano3開發環境中進行部署。當我運行部署命令時,我發現資產已經預編譯。

$帽開發部署--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). 

我需要做什麼來避免資產預編譯什麼。它進一步給出了

+0

in'Capfile'這行評論了'load'deploy/assets''? –

+0

@ Monk_Code-我正在使用capistrano 3. – user3205523

回答

18

你的Capfile文件是什麼?

如果你有

require 'capistrano/rails' 

那麼它會預先編譯資產,因爲Capistrano的/軌道還包括捆綁,導軌/資產和導軌/遷移。

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_ENV =分期部署我的舞臺。代替這個,我使用capistrano/rails和設置集:assets_roles,[]工作 –

1

就我而言,我們的團隊使用共享gem來處理所有Rails應用程序,共享gem需要「capistrano/rails」(從而引入資源編譯)。對於沒有處理這個應用程序,我們所做的是Add:

set :assets_roles, [] 

config/deploy.rb這使得Capistrano的護欄跳到資產預編譯。