2012-03-22 4 views
11

Heroku 환경을 준비로 설정했지만 자산은 항상 프로덕션 환경에서 컴파일됩니다.Heroku는 항상 자산을 실행합니다. Rails 3.2의 프로덕션 환경으로 프리 컴파일합니다.

여기 heroku config이다 : 나는 자산을 컴파일 할 때 실행중인 봉투를 알 수 있도록

 
GEM_PATH   => vendor/bundle/ruby/1.9.1 
LANG    => en_US.UTF-8 
PATH    => bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin 
RACK_ENV   => staging 

내가 production.rb 파일에 예외를 추가했습니다. 서버가 잘 실행되면 heroku run console은 내가 준비를 실행 중임을 보여줍니다.

언제나 생산중인 assets:precompile을 실행하는 것입니다.

필요한 경우 다른 설정 파일을 게시 해 드리겠습니다.

내가 레일 3.2.2와 Heroku가에 삼나무 스택


출력 heroku run rake about에서 실행하는거야 것을 추가 할 수 있습니다

 
About your application's environment 
Ruby version    1.9.2 (x86_64-linux) 
RubyGems version   1.3.7 
Rack version    1.4 
Rails version   3.2.2 
JavaScript Runtime  therubyracer (V8) 
Action Pack version  3.2.2 
Active Support version 3.2.2 
Middleware    Rack::Cache, ActionDispatch::Static, Rack::Lock, #, Rack::Runtime, Rack::Auth::Basic, Rack::MethodOverride, ActionDispatch::RequestId, Rails::Rack::Logger, ActionDispatch::ShowExceptions, ActionDispatch::DebugExceptions, ActionDispatch::RemoteIp, ActionDispatch::Callbacks, ActionDispatch::Cookies, ActionDispatch::Session::CookieStore, ActionDispatch::Flash, ActionDispatch::ParamsParser, ActionDispatch::Head, Rack::ConditionalGet, Rack::ETag, ActionDispatch::BestStandardsSupport 
Application root   /app 
Environment    staging 

그리고이 heroku run rake assets:precompile를 실행 준다 :

/usr/local/bin/ruby /app/vendor/bundle/ruby/1.9.1/bin/rake assets:precompile:all RAILS_ENV=staging RAILS_GROUPS=assets 

나는 그냥 Heroku를 포기하고 이메일로 보내야합니까?

답변

19

분명히 작동하게하려면 enable a plugin이 필요했습니다.

+1

heroku guys는 명시 적으로 문서에서 이것을 지정해야한다고 생각합니다. –

+0

이 플러그인은 더 이상 사용되지 않습니다 - https://devcenter.heroku.com/articles/labs-user-env-compile –

1

RAILS_ENV에서 staging으로 설정하여 Heroku가 더 만족스럽게 보이는지 확인하십시오.

+1

작동하지 않음 : C –

+0

아, 죄송합니다. :/ – Veraticus

+0

시도해 주셔서 감사합니다! –

관련 문제