開発日誌20171211

SeekGeeksSeekUpsの開発環境としてVagrantをずっと使ってきていて、synced_folderでDropbox上のディレクトリをWeb公開用ディレクトリと同期させて複数の開発機から同じソースコードをいじれるようにしていた。
なので今作ってるWebアプリでも同じようにしようと思ってたんだけど、環境がCentOS6からCentOS7へ、ApacheをNginxへ、mod_wsgiをuwsgiに変更した影響なのか知らないけど、同期がうまくいかなかった。マウントはできるんだけど、ソースコードを書き換えても反映されない。

調べたらsynced_folderにnfsっていうオプションを付ければOKっぽいってことがわかったので最近そうしている。
ちなみにこれやったらVagrantの起動が激遅になってしまって困っている。これホントに何なの?
でもnfsにしたらたしかにちゃんと動くようになったのでとりあえず開発を進められるようになったので良かった。

ところがPythonやHTMLはいいんだけど、CSSやJSを書き換えてもキャッシュが効いててたまに反映してくれないときがあるのに気付いた。
一々プラグインでキャッシュ消したりShift+Ctrl+Rとかで更新するのがかなり面倒になってきたので、HTMLでJSとCSSを読み込んでる箇所のURLの最後に"?v=123456"みたいな文字列を追加してキャッシュ読み込みを回避してみたらうまく動いた。実際書き換えるのはPythonだけど。今回はサーバー側でもレンダリングしてるので、

str(time.time()).split('.')[0]

って感じで時間を元に文字列生成するようにした。
しばらくこれで頑張ろう。
でもnfsにしたら起動時間倍くらいになっちゃったのは頂けない。困った。
開発機のスペックを上げるか、Dockerを投入した方が良いのかもしれない。
そういえばそろそろ年末セールの時期ですね。ハイスペックPCが欲し(ry