redmineのデフォルト.gitignore
参考になるのでメモ。

/config/additional_environment.rb
/config/database.yml
/config/email.yml
/config/initializers/session_store.rb
/coverage
/db/*.db
/db/*.sqlite3
/db/schema.rb
/files/*
/log/*.log*
/log/mongrel_debug
/public/dispatch.*
/public/plugin_assets
/tmp/*
/tmp/cache/*
/tmp/sessions/*
/tmp/sockets/*
/tmp/test/*
/vendor/rails
*.rbc

database.ymlはリポジトリに含めた方がいい気もするけどね。

WP Rails Authenticateに手を加える過程で便利だったのが、FIrebugのプラグインFirePHP。php内でデバッグログを出力させてFirebugのコンソールに表示することができる。ちょっとしたプラグインの改造にはとても便利。
ライブラリは直接埋め込んでもいいが、WordpressならSimple WP FirePHPというプラグインがあるので、これを入れるだけでいい。
で、プラグインの適当な所に

FB::group('group one');
FB::log($object, 'some object data');
FB::groupEnd();

とか埋め込んでやればFirebugに表示される。文字列だけではなく、配列だのハッシュだのを放り込んでも適当に整形してくれる(rubyのppっぽく)。なお、groupは表示を分けてくれるだけなので無くても良い。
ついでに、cookieの内容が見れるFireCookieなんてのもある。全くFirebug様々です。しかしあのGっぽいアイコンだけはどうにかならないものか…

懲りずにRailsとWodpressの認証を結合する試みの続き。
integration apiを使って一定の成功は見たものの、実はdevelopment環境(cookieセッション)でしか動かなかった。production環境はmemcachedセッションを採用しているが、integration apiはcookieセッションとActiveRecordセッションにしか対応してない。memcachedセッションに対応させようと色々やってみたが挫折した。遺憾ながらこの手は放棄するッ!
と言うわけでもう一つのプラグイン、WP Rails Authenticateを使ってみることにした。

More »

Apache2.2のリバースプロキシで運用しているRailsアプリ内で、ドメインをそのままに一部をRails以外のコンテンツ(Wordpress等)で構成する必要が出てきた。
と言ってもそんなに複雑なものではないので、下位ディレクトリの一つを適当な場所にAliasしてやって、そこだけリクエストがmongrelに渡らないようにする。

More »

いつも忘れて調べるので備忘録。主にブランチまわり。

ブランチを作成する

git branch new_branch

ブランチを切り替える

git checkout new_branch

new_branchブランチをmasterにマージ

git checkout master
git merge new_branch

リモートにpushしたらrefuseされた時(リモートで)

git config --add receive.denyCurrentBranch ignore

特定ファイルを一つ前に戻す

git checkout HEAD^ path/to/file

おまけ。
capistranoから本番環境のサーバを停止・起動・再起動

cap deploy:[stop|start|restart]

RailsとWordPressをシングルサインオンで繋ぐIntegration APIというプラグインがあるらしい。
MOONGIFTさんの記事を見てから一度使ってみたいと思ってたんだけど、使えそうな案件があったので試してみた。
簡単に仕組みを説明すると、Rails側にセッションと認証情報を提供するAPIを用意し、WordpressのプラグインからJSONで認証情報を貰ってくるというもの。APIはcookie名やログインURLを提供するconfg_infoと、cookieを認証情報にデコードするuserの二種類しかないシンプルなもの。

ところが、記事中のサイトが既にドメインごとなくなっていていきなりつまづく。ええええ…
githubを探し回ると、gravis’s integration_apiが見つかった。こ、これかな。
ちなみにWordpressのプラグインの方はRails Integration APIという名前で公式からダウンロードできる。
既にこの時点で「メンテナンスされてないんじゃないか」という疑念が走るが、まぁ実験ということでとりあえず使ってみる。(と言うか既に手段が目的化しているのであった)

More »