Redmine のアップグレード全手順(1.2.3 → 2.2.2) その5

投稿「Redmine のアップグレード全手順(1.2.3 → 2.2.2) その4」からの続きです。

2.5.セッション管理用秘密鍵の作成
[root ~]# rake generate_session_store

Note: The rake task generate_session_store has been deprecated, please use the replacement version generate_secret_token

また失敗。「generate_secret_token」を使えということらしい。それでは、次のコマンドを実行してみます。

[root ~]# rake generate_secret_token

成功しました。/var/lib/redmine/config/initializers に、secret_token.rb が作成されました。

3.SVNチェックアウトのアップグレード

Redmineのインストールディレクトリに移動して、以下のコマンドを実行します。

[root ~]# svn update
'.' を飛ばしました
4.データベースの更新

新しいRedmineのインストールディレクトリに移動し、データベースのマイグレーションを実行します。

4.1.データベースのマイグレーション
[root ~]# rake db:migrate RAILS_ENV="production"
==  CreateChangesetParents: migrating =========================================
-- create_table(:changeset_parents, {:id=>false})
   -> 0.0156s
-- add_index(:changeset_parents, [:changeset_id], {:name=>:changeset_parents_changeset_ids, :unique=>false})
   -> 0.0979s
-- add_index(:changeset_parents, [:parent_id], {:name=>:changeset_parents_parent_ids, :unique=>false})
   -> 0.0143s
==  CreateChangesetParents: migrated (0.1283s) ================================
(略)

特にエラーメッセージが出なければ成功です。次のようなマイグレーション内容と結果のセットが次々と表示されます。

== xxxxxxxx: migrating =========================================
== xxxxxxxx: migrated (0.9999s) ================================

4.2.プラグインのマイグレーション
[root ~]# rake db:migrate_plugins RAILS_ENV=production

Note: The rake task db:migrate_plugins has been deprecated, please use the replacement version redmine:plugins:migrate

コマンドを変更して実行します。

[root ~]# rake redmine:plugins:migrate RAILS_ENV=production
5.クリーンナップ

キャッシュとセッションファイルのクリアを行います。

[root ~]# rake tmp:cache:clear
[root ~]# rake tmp:sessions:clear
6.表示確認

実際にアクセスして、「Ruby (Rack) application could not be started」というタイトルのページは表示されるので、そのページの「Error message」にしたがって、以下のように対応します。

Could not find pg-0.14.1 in any of the sources (Bundler::GemNotFound)に対して。

[root ~]# gem install pg -v '0.14.1'
Building native extensions.  This could take a while...
Successfully installed pg-0.14.1
1 gem installed
Installing ri documentation for pg-0.14.1...
Installing RDoc documentation for pg-0.14.1...

Could not find ruby-openid-2.1.8 in any of the sources (Bundler::GemNotFound)に対して。

[root ~]# gem install ruby-openid -v '2.1.8'
Fetching: ruby-openid-2.1.8.gem (100%)
Successfully installed ruby-openid-2.1.8
1 gem installed
Installing ri documentation for ruby-openid-2.1.8...
Installing RDoc documentation for ruby-openid-2.1.8...

Could not find rack-openid-1.3.1 in any of the sources (Bundler::GemNotFound)に対して。

[root ~]# gem install rack-openid -v '1.3.1'
Fetching: rack-openid-1.3.1.gem (100%)
Successfully installed rack-openid-1.3.1
1 gem installed
Installing ri documentation for rack-openid-1.3.1...
Installing RDoc documentation for rack-openid-1.3.1...

Could not find shoulda-2.11.3 in any of the sources (Bundler::GemNotFound)に対して。

[root ~]# gem install shoulda -v '2.11.3'
Fetching: shoulda-2.11.3.gem (100%)
Successfully installed shoulda-2.11.3
1 gem installed
Installing ri documentation for shoulda-2.11.3...
Installing RDoc documentation for shoulda-2.11.3...

Could not find yard-0.8.3 in any of the sources (Bundler::GemNotFound)に対して。

[root ~]# gem install yard -v '0.8.3'
Fetching: yard-0.8.3.gem (100%)
Successfully installed yard-0.8.3
1 gem installed
Installing ri documentation for yard-0.8.3...
Installing RDoc documentation for yard-0.8.3...

これで、きちんと表示されました。

ここで一旦、httpd を再起動してみます。
すると、httpd の error_log に次のようなエラーメッセージが出ています。

Rails Error: Unable to access log file. Please ensure that /var/lib/redmine/log/production.log exists and is chmod 0666.

これに対処するために、次のようにパーミッションを変更します。

[root ~]# chmod 666 /var/lib/redmine/log/production.log

再度、httpd を再起動して、エラーメッセージが出ないことを確認します。

ところで、もう少し問題があります。管理者でログインして、管理-設定をクリックすると「Internal error」が発生するという問題です。
これに対処するために、次のようにパーミッションを変更します。

[root ~]# chmod 777 /var/lib/redmine/tmp/cache

同様に、filesディレクトリについてもパーミッションを変更しておきます。

[root ~]# chmod 777 /var/lib/redmine/files

これですべてが正常に表示されました。

Comments are closed.