「RailsによるアジャイルWebアプリケーション開発」27章読了
本番環境への配備のお話し。
capistranoで色々ハマったので、メモっておく。
cap --apply-toが使えない件
なんかもうオプションとか変わってるみたい。
http://www.tkrb.jp/guide/2008/02/capistrano_rails.html
辺りを参考にしました。
Subversion久しぶりだったので
どうやってimportするか忘れてた。
http://www.hyuki.com/techinfo/svninit.html#repdir
を参考にした。
taka@taka-desktop:~/test$ svn import file:///home/taka/svnrepos/myapplication -m "Initial import." 追加しています test 追加しています test/unit 追加しています test/unit/product_test.rb 追加しています test/unit/order_mailer_test.rb 追加しています test/test_helper.rb ...
cap deploy:setupでディレクトリ作成エラー
** [localhost :: err] svn: ディレクトリ '/var/www/myapplication/releases/20080729065038' を作成できません: Permission denied
配備先(/var/www/myapplicationとか)のディレクトリの書き込み権限がなくてエラーになった。
とりあえず777で強引に抜けたものの、もしかしたらユーザIDを設定するのが正しいのかもしれない。
下記参照。
sudo: no passwd entry for app!
http://pools.jp/2008/05/06/capistrano-sudo-no-passwd-entry-for-app/
のやりかたでOKでした。
もしかしたら、上のも回避出来るかもしれないと思ってたりします。
あと、mysqlのパスワードが設定されてないとダメなのかと思って、
rootのパスワードを設定してみたりもしました。
http://blog.c-production.com/archives/2006/08/mysqlroot.html
が、たぶんこれは関係ないです。
pidファイルが見付からないうんぬん
mysqlのpidファイルの場所が、デフォルトでは/tmpなのですが、違ってたという話し。
mysqlにログインして、\sコマンドで調べられます。
UNIX socket: /var/run/mysqld/mysqld.sock
こいつをconfig/database.ymlに設定する。
production: adapter: mysql database: myapplication database: myapplication username: root password: root socket: /var/run/mysqld/mysqld.sock
script/spinがNo Such File
http://groups.google.com/group/capistrano/browse_thread/thread/fbeed5f2d2de9db4/a526bf9785346cb6
http://capify.org/getting-started/rails
自分で作らないといけないというオチ。