風邪ひいた~。
木曜からなんか微妙な感じがしていたが、金曜夜になって急に熱が出てきた。喉痛いし鼻水出まくるし。それで土日は寝てたんだが、月曜も熱は無いもののまだ鼻水出まくるし喉もちょっと痛いので休み。というより土日になにもやってなくて買い物とか行かないと食う物無いとかもあったんで。火曜日になっても完治はしてなかったが、まあ仕事するくらいは余裕なので出社しよう。ティッシュとのど飴があればなんてことはない。
土曜にTRPGやる予定だったのに潰れたのが痛い。 今週末は妖精帝國のライブで仙台まで行く。そのまま帰省なので無理。 再来週あたりにやるか……。
今までJavaで作られてたイベントサイトだが、俺がJavaをわかってないのでいじりづらくてしんどい。 さらにフレームワークとしてPlay!の1.2.xとか古いのを使ってるんだがこれを2.x系にするのは大幅な変更が必要で大変そうだ。 それならいっそRubyで作り直そうとやっていた。
普通にSinatraにpg使ってDB直接いじればいいかーと思ってたんだが1、pgだとherokuのDATABASE_URL形式の接続文字列使えないので自分で解析する必要があるようだ。それはめんどいのでなんか丁度いいアダプタ的なものないかな……。Sequelてのがあった。これでいいや。ORマッパーはいらん。
Sequelに乗り換えたら困ったことにSQL実行時にエラーが出るようになってしまった。pgの中でselectを呼ぼうとしてなんとかかんとかってエラーが出てるみたい。pgのasync_execみたいなのをSequelが呼んでるんだが、それが上手く動かないみたいだ。 ソースまで見てみたところ、Windowsのruby 1.9以降だとselectなんか呼ばないのが正しいっぽい。もしかしてmsys2のgccって_WIN32定義されてないのでは……うわ、そうだ。まじかよこれ使えねぇ。仕方ないのでmingw64版のrubyとgccを入れ直して上手く動くようになった。
認証はomniauthてのを使えば楽っぽい。やってみたら超楽だし便利だった。これすげえな。 ただ使い方のドキュメントがいまいちわかりづらいのはちょっと残念だ。
あとAWS使ってるのでそのSDK使ってみたり。使い方は簡単だったけど上手くつながらなくて困った困った。 なんだかよくわからんがSSLのエラーが出まくってつながらん。 調べるとcacertだかなんだかが無いと出るらしいのでそれらしいパッケージを入れてみるとファイルが出てきた。が、改善せず。 原因はさっぱりわからないんだが、とにかくSSLがつながらないようだ。mingw64でもmsys2でもダメ。なんだろうなぁ……。 AWS SDKの接続時にSSLの署名確認しないみたいなオプションがあったのでそれでごまかした。 そしたら今度はまた別なエラーが。なんか認証がおかしいとかいうのがAWSから返ってきてる雰囲気。環境変数に設定しておいたアクセストークンとシークレットキーを表示してみると、シークレットキーの先頭がスラッシュになっているのをmsys2が変な気を効かせて絶対パスに展開してやがった。余計なことしやがって……。Rubyレベルで設定してやって回避した。
他は今のところ特に困ったこともないかなぁ。あと一番大きなサークルページの編集だけが残ってるんだが、簡単になんとかできるわけでもないし、ぼちぼちやってくしか。
Railsなんてのはプロい人が使う物なので、Web良くわかってない俺にはSinatraでも高級すぎるくらいだ。Rack直でもいいんだが。 ↩