Ubuntu の Redmine を 1.3.0 にアップグレードした

Redmine 1.2.0 から 1.3.0 アップデートするのに色々とハマったのでメモしておく。

Redmine 1.3.x で必要となる Rails などの依存バージョンは以下の通りです。

Ruby 1.8.7
Rails 2.3.14
Rack 1.1.1

参照)Redmineのインストール — Redmine Guide 日本語訳

RubyRails バージョン

$ /usr/bin/ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]
$ /usr/bin/rails -v
Rails 2.3.14

以上は、Debian Package(apt-get)で入れたもの。

Rubygems をダウンクレード

Rubygems のバージョンが 1.8.13 だったが、Rails が対応していないため Rails 2.3.14が対応している 1.5系の 1.5.3 に替える。

$ sudo gem install rubygems-update -v 1.5.3
Fetching: rubygems-update-1.5.3.gem (100%)
Successfully installed rubygems-update-1.5.3
1 gem installed
Installing ri documentation for rubygems-update-1.5.3...
Installing RDoc documentation for rubygems-update-1.5.3...
$ sudo gem uninstall rubygems-update

Select gem to uninstall:
 1. rubygems-update-1.5.3
 2. rubygems-update-1.8.13
 3. All versions
> 2
Successfully uninstalled rubygems-update-1.8.13
$ sudo update_rubygems 
RubyGems 1.5.3 installed

=== 1.5.3 / 2011-02-26

NOTE:  RubyGems 1.5.0 and 1.5.1 have a broken <tt>gem update --system</tt>.

To upgrade you'll need to use the manual upgrade recipe.  Using sudo/su as
appropriate:

  $ gem install rubygems-update
  $ update_rubygems

Bug Fixes:

* Fix for a bug in Syck which causes install failures for gems packaged with
  Psych.  Bug #28965 by Aaron Patterson.


------------------------------------------------------------------------------

RubyGems installed the following executables:
	/usr/bin/gem1.8

Rack, Rake, RDoc をインストール

Rack 1.1.2 をインストール
$ sudo gem install rack -v=1.1.2
Fetching: rack-1.1.2.gem (100%)
Successfully installed rack-1.1.2
1 gem installed
Installing ri documentation for rack-1.1.2...
Installing RDoc documentation for rack-1.1.2...
Rake 0.8.7 をインストール
$ sudo gem install rake -v=0.8.7
Fetching: rake-0.8.7.gem (100%)
Successfully installed rake-0.8.7
1 gem installed
Installing ri documentation for rake-0.8.7...
Installing RDoc documentation for rake-0.8.7...
RDoc 2.4.3 をインストール
$ sudo gem install rdoc -v=2.4.3
Fetching: rdoc-2.4.3.gem (100%)
Successfully installed rdoc-2.4.3
1 gem installed
Installing ri documentation for rdoc-2.4.3...
Updating ri class cache with 264 classes...
Installing RDoc documentation for rdoc-2.4.3...

Redmine の展開

RubyForge: Redmine: Project Filelist から 1.3.0 の tar.gz をダウンロードして展開。

/web/redmine-1.2.0
/web/redmine-1.3.0

と新旧バージョンのディレクトリが並んでる状態になっている。

設定ファイルのコピー

config の database.yml と email.yml をコピーする。

プラグインのコピー

vendor/plugins 内の自分で入れたプラグインをコピーする。

セッションデータを生成

$ sudo rake generate_session_store

データベースのマイグレーション

$ sudo rake db:migrate RAILS_ENV="production"

プラグインのデータベースのマイグレーション

$ sudo rake db:migrate:upgrade_plugin_migrations RAILS_ENV=production
$ sudo rake db:migrate_plugins RAILS_ENV=production

キャッシュとセッションファイルのクリア

$ rake tmp:cache:clear
$ rake tmp:sessions:clear

アプリケーションのサーバの再起動で終了。