Redmine と subversion を連携する際にハマったので備忘録的なメモ。
環境は以下。
CentOS 6.6
Apache 2.2.15
Redmine 2.6.1
Redmine と subversion は同一のサーバにインストールした。
Redmine と subversion の連携のために実施したこと。
・リポジトリは、/var/repos に作成する。
ex)
# svnadmin create /var/repos/test-repo
・リポジトリ毎にグループを作成し、リポジトリのグループを作成したものに変更する。
ex)
# cd /var/repos/
# groupadd testgroup
# chown -R root:testgroup test-repo
・作成したグループには、操作が必要なユーザを参加させる。
Redmineでもリポジトリを参照できるようにする為、apacheユーザも含める。
ex)
# gpasswd -a user1 testgroup
# gpasswd -a apache testgroupz
# id apache
uid=48(apache) gid=48(apache) groups=48(apache),XXX(testgroup)
・Redmine からは、file:/// で参照するようにする。
Redmine で表示できない・・・。
Redmineのプロジェクトページからリポジトリを参照するも、NotFoundが出てしまった。
また、apacheのerror_logに以下が出力されていた。
App 7338 stderr: svn: Unable to open repository 'file:///var/repos/test-repo'
App 7338 stderr: svn: Can't open file '/var/repos/test-repo/format': Permission denied
Permission denied と言われているが、testgroupには apache ユーザは追加されている。
ここで、いろいろいじくり回してみたが解決しない。
apache の再起動が必要だった。
ふと思いつき、apache の再起動を行ったところ、Redmineからもリポジトリが参照できるようになった。
どうも、グループなどの変更は再起動しないと読み込み直してくれないらしい。
もしかしたら当たり前のことかもしれないけど・・・。