2012-05-09 66 views
4

在heroku上部署時,即使rake資產:預編譯失敗,heroku仍會繼續部署。爲什麼Heroku繼續部署即使rake資產:預編譯失敗?

爲什麼它是默認行爲?有沒有辦法阻止heroku部署版本,如果耙資產:預編譯失敗?謝謝。

-----> Writing config/database.yml to read from DATABASE_URL 
    -----> Preparing app for Rails asset pipeline 
      Running: rake assets:precompile 
      rake aborted! 
      The line was indented 2 levels deeper than the previous line. 
      (in /tmp/build_3tgkcip2wq2qv/app/assets/stylesheets/master.css.sass) 

      Tasks: TOP => assets:precompile:primary 
      (See full trace by running task with --trace) 
      Precompiling assets failed, enabling runtime asset compilation 
      Injecting rails31_enable_runtime_asset_compilation 
      Please see this article for troubleshooting help: 
      http://devcenter.heroku.com/articles/rails31_heroku_cedar#troubleshooting 
    -----> Rails plugin injection 
      Injecting rails_log_stdout 
      Injecting rails3_serve_static_assets 
    -----> Discovering process types 
      Procfile declares types  -> (none) 
      Default types for Ruby/Rails -> console, rake, web, worker 
    -----> Compiled slug size is 52.9MB 
    -----> Launching... done, v163 
+0

你有沒有找到一種方法來實現這一目標?或者一種禁用運行時資產編譯的方法,至少你會注意到它?或者其他方式來自動檢測資產編譯失敗? –

+0

對此的任何文字或解決方法? – Kamilski81

回答

1

因爲即使資產編譯失敗,應用程序也能夠處理不涉及資產f.x的請求。提供REST XML或JSON請求。

+2

這不是一個好的理由。它正在部署一個潛在的(可能)破壞的應用程序。它至少應該是部署失敗的一個選項。實際上,能夠使用某些API來完成此操作會很好,以便其他部署任務(以及其他構建包)可能會觸發部署失敗並阻止部署。 –

相關問題