【Rails5】途中でCoffeeScriptを排除するときのherokuでの対応方法
herokuでどのように対応すればいいか書いてある記事が少なかったのでメモがてら
はじめから排除する場合はかんたん
おなじみですが
$ rails new --skip-coffee
途中からの場合
開発環境では
Gemのcoffeescriptをコメントアウト
# Use CoffeeScript for .coffee assets and views # gem 'coffee-rails', '~> 4.2'
config>application.rb にjsエンジンを指定
class Application < Rails::Application config.generators.javascript_engine = :js end
$ docker-compose run web bundle install
- .coffeeファイルを削除
railsのキャッシュをクリア
$ docker-compose run web rails tmp:cache:clear
docker再ビルド
$ docker-compose build
herokuでの対応方法
何もしないままgit push heorku
するとコンパイルエラーになっていまいます。
$ git push heroku => (中略) remote: rake aborted! remote: LoadError: cannot load such file -- coffee_script (中略) remote: ! remote: ! Precompiling assets failed. remote: !
herokuのキャッシュを削除するためにheroku-repoを導入
$ heroku plugins:install heroku-repo => Installing plugin heroku-repo... installed v1.0.13
repoでキャッシュを削除
$ heroku repo:purge_cache -a [アプリ名]
herokuにpushする
キャッシュを削除したのでいつもよりやや時間がかかります。