会社でもやったけどすんなりできた。
0.8.2を動かしていた時のgemの様子は以下。
c:\fujihara\Ruby\redmine-0.8.2>gem list *** LOCAL GEMS *** actionmailer (2.2.2) actionpack (2.2.2) activerecord (2.2.2) activeresource (2.2.2) activesupport (2.2.2) linecache (0.43) rails (2.2.2) rake (0.8.3) ruby-debug-base (0.10.2) ruby-debug-ide (0.3.1)
これだとちょっと古い。0.9.0のenvironment.rbにはRails2.3.5にせよと書いてあるので、それに従うことにした。
2010/01/29時点で、「gem update」をすれば2.3.5が入る。それ以外の場合は「-v 2.3.5」とかで。
しかし、MySQLのgemとaasmが入っていないと怒られた。
MissingSourceFile (no such file to load -- aasm): MissingSourceFile (no such file to load -- mysql):
ないものはインストール。
c:\fujihara\Ruby\redmine-0.9.0>gem install mysql c:\fujihara\Ruby\redmine-0.9.0>gem install aasm # -> 昔はgem install rubyist-aasmだったみたい
一覧を見てみると・・・
c:\fujihara\Ruby\redmine-0.9.0>gem update c:\fujihara\Ruby\redmine-0.9.0>gem list *** LOCAL GEMS *** aasm (2.1.4) actionmailer (2.3.5, 2.2.2) actionpack (2.3.5, 2.2.2) activerecord (2.3.5, 2.2.2) activeresource (2.3.5, 2.2.2) activesupport (2.3.5, 2.2.2) linecache (0.43) mysql (2.8.1) rack (1.0.1) rails (2.3.5, 2.2.2) rake (0.8.7, 0.8.3) ruby-debug-base (0.10.2) ruby-debug-ide (0.3.1)
config/database.ymlとか、config/email.ymlやfilesフォルダはコピーして使える。
プラグインはほとんど動かなかったので入れないでおく。そしてDBのmigrateなのだが、
c:\fujihara\Ruby\redmine-0.9.0>rake db:migrate RAILS_ENV="production" (in c:/fujihara/Ruby/redmine-0.9.0) rake aborted! A key is required to write a cookie containing the session data. Use config.action_controller.session = { :key => "_myapp_session", :secret => "some secret phrase" } in config/environment.rb
と怒られるので、config/environment.rbに以下を記述。secretはご自由に。
config.action_controller.session = { :key => "_redmine_session", :secret => "fujiharahasaikintsukaretekimasitagagannbarimasu" }
DBのmigrateすると
c:\fujihara\Ruby\redmine-0.9.0>rake db:migrate RAILS_ENV="production" --trace (in c:/fujihara/Ruby/redmine-0.9.0) ** Invoke db:migrate (first_time) ** Invoke environment (first_time) ** Execute environment ** Execute db:migrate rake aborted! Mysql::Error: query: not connected: SELECT version FROM schema_migrations
と怒られる。mysqlのクライアントを古くすると解決するとのこと。http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/libmySQL.dllをもってきて、migrateして、セッションなどを初期化。
rake db:migrate RAILS_ENV="production" rake tmp:cache:clear rake tmp:sessions:clear
意外に大変だけど、足りないものが結構あったってことかな。
今日はおしまい。明日は0.9でプラグイン動かすぞー。