社内プロジェクトの開発プロセスは今までもRedmine+Backlogsを使っていました。しかし、2点ほど問題があります。
- Redmineのバージョンが古い
もともとUbuntu12.04にRedmine1.3系を入れましたがもう古いのでUbuntu14.04に合わせバージョンアップしたい - 運用が間違って仕様書等をIssueに添付してしまった
仕様書をIssueに添付してしまったため後になって仕様書はどこですだっけってこととなり、仕様書が散乱してしまうことに〜
まぁ、RedmineにもFileというモジュールがあるが、あまりにもシンプルで使い物にならない
上記を踏まえて今回Ubuntu14.04に下記をやりたいと思います。
- Redmineをパッケージからインストールする。メインテナンスしやすいため
- Backlogs+DMSF(ファイル管理プラグイン)をインストールする
仕様書等はあるルールにしたがって全部このDMSFプラグインに一元管理する
メインテナンス重視のため、Ubuntu14.04のRedmineをインストールしたいと思います。インストールは割りと簡単です。
apt-get install apache2 libapache2-mod-passenger apt-get install mysql-server mysql-client apt-get install redmine redmine-mysql apt-get install bundler
その感じで行けちゃいます。
その後多少の設定を行ってOKですね。
vi /etc/apache2/sites-available/default-ssl.conf ←SSLで運用することですので〜
DocumentRoot /usr/share/redmine/public <Directory /> Options FollowSymLinks RailsBaseURI / PassengerResolveSymlinksInDocumentRoot on AllowOverride None </Directory>
vi /etc/apache2/mods-available/passenger.conf
<IfModule mod_passenger.c> PassengerDefaultUser www-data PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini PassengerDefaultRuby /usr/bin/ruby # RailsBaseURI / </IfModule>
Port80にアクセスしてきたら、SSL443ポートにリダイレクトするようにする
<VirtualHost *:80> ServerName xxx.co-mit.com ServerAdmin info@co-mit.com RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} </VirtualHost>
その後
chown -R www-data:www-data /usr/share/redmine service apache2 restart
Redmineサイトにアクセスできて、admin/adminでログインできれば終わりです。
つぎにRedmine Backlogsをインストールします。
cd /usr/share/redmine/ mkdir plugins cd plugins/ git clone git://github.com/backlogs/redmine_backlogs.git git checkout v1.0.6 RAILS_ENV=production export RAILS_ENV
ドキュメントによるといきなりbundle installをインストールしたいところだが、そんなに簡単にはいけません。ここで依存関係を一つ一つ潰していかいないといけません。
いろいろやった結果、こんな感じ
apt-get install libxml2-dev apt-get install libxslt-dev gem install cucumber -nori -nordoc bundle install --without development test
これでやっとbundle installができるようになりました。
いよいよRedmine Backlogsのインストールだ!!!
bundle exec rake db:migrate bundle exec rake tmp:cache:clear bundle exec rake tmp:sessions:clear bundle exec rake redmine:backlogs:install service apache2 restart
ここで完了のはずですが、Backlogsプラグインがレイアウトを崩れているし、Redmine自体のログイン・ログアウトもできなくなった。
やはり、gemファイルの辺かな。いろいろ探ってみました結果、解決しました。理由は2点ほど
1つはRedmineはrack1.4.5を利用しているが先のbunlde installでrack1.6.0も入ってしまったためだめでした。
gem list|grep rack rack (1.6.0, 1.4.5)
回避方法としてGemfileをいじります。Rackと同じくactivesupportも個別バージョンを指定する必要があります。
gem "rack", "1.4.5" gem "activesupport", "3.2.16"
2つ目はRedmine自体のレイアウト崩れです。調べるとなんとRedmineのassetsは何もコピーされないのでCSS、JSがなきゃレイアウト崩れは当然だよな。いい加減にして〜〜〜
手動でassetsをコピーすることにします。
cd public/ mkdir -p plugin_assets/redmine_backlogs/ cp -r * ../plugins/redmine_backlogs/assets/* plugin_assets/redmine_backlogs/
これでRedmine+Backlogsがうまく動作できました。
最後にDMSFをインストールします。このはなかなかいいファイル管理モジュールです。フォルダ構成、バージョン管理、ロック機能等は揃っているので助かります。
cd plugins/ git clone https://github.com/danmunn/redmine_dmsf.git gem install dav4rack apt-get install zlibc apt-get install zlib1g-dev gem install simple_enum -v '1.6.9' gem install zip-zip bundle install --without development test rake redmine:plugins:migrate RAILS_ENV="production"
ここでもまたGemfileの調整しないといけません。DMSFのGemfileはこんな感じとなります。
source 'https://rubygems.org' gem 'rubyzip', '>= 1.0.0' gem 'zip-zip' # Just to avoid 'cannot load such file -- zip/zip' error gem 'simple_enum', '~> 1.6.9' gem 'uuidtools', '~> 2.1.1' gem 'dav4rack', '~> 0.3.0' group :production do # gem 'nokogiri', '>= 1.5.10' gem 'nokogiri', '< 1.6.0' end #Allows --without=xapian #group :xapian do # gem 'xapian-full-alaveteli', :require => false #end
Backlogsと同じくassetsもコピーしないとだめです。またファイル保存フォルダも手動で作成することになります。
cd public/ cd plugin_assets/ mkdir redmine_dmsf cd redmine_dmsf/ cp -r /usr/share/redmine/plugins/redmine_dmsf/assets/* . cd ../../../ mkdir -p files/dmsf chown -R www-data:www-data /usr/share/redmine
以上、簡単なインストール手順のメモを書きましたが、Ruby関連のファイルのパージョン等があるためインストールしにくいと思います。ご参考できればと幸いです。
One comment
Leave a Comment