脳みそスワップアウト

揮発性なもので。おもにPHPのこととか。

Redmine upgrade 3.3.2 -> 4.4.1

Redmine upgrade 3.3.2 -> 4.4.1

MySQL8を検証のために導入したらRedmineが動かなくなってしまった。
その流れでRedmineをバージョンアップしたので作業メモ

  • CentOS-6.10
  • Redmine 3.3.2 → 4.4.1
  • rbenv 0.4.0-192-g825de5d → 1.1.2-30-gc879cb0
  • ruby 2.2.3 → 2.6.6

Ruby

2.3.0以降が必要とのこと。

$ rbenv --version
rbenv 0.4.0-192-g825de5d

$ rbenv versions
* system (set by /usr/local/rbenv/version)
  2.2.3

$ ruby --version
ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]

rbenvの更新

$ rbenv --version
rbenv 0.4.0-192-g825de5d

$ cd /usr/local/rbenv/
$ sudo git pull

$ rbenv --version
rbenv 1.1.2-30-gc879cb0


$ cd plugins/ruby-build/
$ rbenv install --version
ruby-build 20151028-11-gbd22205

$ sudo git pull

$ rbenv install --version
ruby-build 20200401-9-g3ef704e

Ruby

$ sudo rbenv install 2.6.6
Downloading ruby-2.6.6.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.6.tar.bz2
Installing ruby-2.6.6...
Installed ruby-2.6.6 to /usr/local/rbenv/versions/2.6.6

$ rbenv versions
* system (set by /usr/local/rbenv/version)
  2.2.3
  2.6.6

DBバックアップ

mysqldump -uroot -p redmine --databases --single-transaction --order-by-primary --quick --quote-names > redmine.sql.20200502.gz

解凍

$ cd /PATH/TO/redmine

### 古いソースに上書きさせる感じ
$ sudo cp -Rp redmine-3.3.2 redmine-4.1.1
$ sudo -u redmine:redmine tar -zxvf ~/local/src/redmine-4.1.1.tar.gz

外部ライブラリ取得

$ cd redmine-4.1.1

$ rbenv local
2.2.3

$ sudo rbenv local 2.6.6
$ rbenv local
2.6.6

$ export RAILS_ENV=production
$ sudo bundle update

DBマイグレーション

$ sudo bundle exec rake db:migrate
$ sudo bundle exec rake tmp:clear

unicorn設定

/etc/unicorn/redmine.conf

--- redmine.conf.20200502       2017-02-17 11:37:00.608028010 +0900
+++ redmine.conf        2020-05-02 06:56:24.813072793 +0900
@@ -2 +2 @@
-RAILS_ROOT=/var/www/vhosts/redmine.studiopoppy.com/redmine-3.3.2
+RAILS_ROOT=/var/www/vhosts/redmine.studiopoppy.com/redmine-4.1.1

起動

unicorn

$ sudo service unicorn start
/var/www/vhosts/redmine.studiopoppy.com/redmine-4.1.1: /etc/init.d/unicorn: line 37: kill: (3193) - No such process
Starting

$ ps aux | grep [u]nicorn
root      4485 14.8 13.8 439292 141088 ?       Sl   06:59   0:04 unicorn_rails master -c config/unicorn.rb -E production -D                                                      
root      4488  0.0 13.3 440316 136540 ?       Sl   06:59   0:00 unicorn_rails worker[0] -c config/unicorn.rb -E production -D                                                   
root      4490  0.0 13.3 440316 136540 ?       Sl   06:59   0:00 unicorn_rails worker[1] -c config/unicorn.rb -E production -D                                                   

nginx

$ sudo service nginx start

プラグイン更新

テーマ更新

$ cd public/themes/redmine-theme-gitmike/
$ sudo -u redmine git pull