Redmine のアップグレード

英語公式 を参照しながら。

Ruby 等のバージョンを確認。

今回は 2.2.2 -> 2.3.2 へのアップデートだった。要求バージョンが rails 3.2.11 -> 3.2.13 に上がっている。

バックアップ

$ cp -r /var/lib/redmine/files ~/
$ mysqldump -u root -p redmine | gzip > ~/ yyyy-mm-dd-redmine-sql.gz

コンフィグファイル等の移行

$ wget http://rubyforge.org/frs/download.php/77023/redmine-2.3.2.tar.gz
$ tar xvzf redmine-2.3.2.tar.gz
$ cp /var/lib/redmine/config/database.yml ~/redmine-2.3.2/config/
$ cp /var/lib/redmine/config/configuration.yml ~/redmine-2.3.2/config 
$ cp -r /var/lib/redmine/files/ ~/redmine-2.3.2/

プラグイン・テーマは入れていなかったのでコピーの必要なし。

redmine の移行

$ sudo service httpd stop 
$ sudo mv /var/lib/redmine/ ~/
$ sudo mv ~/redmine-2.3.2/ /var/lib/
$ sudo mv /var/lib/redmine-2.3.2/ /var/lib/redmine
$ sudo chown -R apache:apache /var/lib/redmine  
$ cd /var/lib/redmine
$ sudo bundle install --without development test postgresql rmagick 
…
libxml2 is missing.
...

はぁ。 対処法を発見した

$ sudo yum install libxslt-devel libxml2-devel
$ sudo bundle install --without development test postgresql rmagick 
Your bundle is complete!
$ sudo rake generate_secret_token
$ sudo rake db:migrate RAILS_ENV=production

プラグインは使っていないので、そのmigrateは必要なし。

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

あとは加えていた変更を再度加える。

$ vi /var/lib/redmine/app/controllers/files_controller.rb
- sort_init 'filename', 'asc'
+ sort_init 'created_on', 'desc'
$ sudo service httpd start

確認

Redmine -> 管理 -> 情報 Redmine version 2.3.2.stable Redmine -> 管理 -> ロールと権限 にて、新機能の権限を設定する(あれば)

教訓

ちゃんと英語ドキュメントを読もう。そちらのほうが up to date である。