私はレガシーアプリに取り組んでいますが、それconfig.assets.compile
がに設定さtrue
れていることがわかりましたproduction.rb
さて、ステージングで徹底的にテストしますが、可能であれば、配列の一部にする必要があるすべてのアセットを見つけたいと思います。precompile
私がしたことは、tmp/cache
ディレクトリに移動して周りを見回すことでした:
rails@foobar-production-app:/srv/www/app/shared/tmp/cache$ find . -type f | grep foobar
./57A/651/http%3A%2F%2Fwww.foobar.com%2Fassets%2Fmathquill.css%3F
./AEE/971/http%3A%2F%2Fwww.foobar.com%2Fassets%2Fmathquill%2Fmathquill.min.js%3F
./222/C12/http%3A%2F%2Fwww.foobar.com%2Fassets%2Flegacy-b56a7fd21baf98f1ac20cd77ca77a184.js%3F
./C96/561/http%3A%2F%2Fwww.foobar.com%2Fassets%2Fmathquill%2Fmathquill.min.js%3Fv2.6%3D
legacy.js
そして、プリコンパイルから欠落していることを知っていた、期待していたファイルを見つけました。ドメイン名に一致するファイルをアセットのプリコンパイルに追加するだけでよいのでしょうか。それで、本番環境にプッシュしても問題ないはずですか、config.assets.compile = false
それとも修正するために探す必要がある他の場所/ファイルがありますか。
私はassets
ファイルのヒープを見つけました - 次のように:
./assets/D1D/0F0/sprockets%2F663a54e3907dfc958d784233a6dd0e9a
そのコンテンツには画像などへのリンクが含まれていますが、それらのフィンガープリント化されたアセットを見ることができますpublic/assets
(はい、実際には本番環境でアセットをプリコンパイルしています)。または、これらのスプロケット ファイルのいずれかが存在することは、問題であり、修正する必要があることを示していますか?
私の質問は、フラグを設定し、ステージングにプッシュし、クリックする以外に、不足しているアセットを最も簡単に見つけるにはどうすればよいかということだと思います。