Project

General

Profile

Actions

GuideDevEnv » History » Revision 2

« Previous | Revision 2/9 (diff) | Next »
Mitsuyoshi Yoshida, 06/25/2011 11:24 PM


プラグインの開発環境の準備

プラグインの開発をしようとした場合、実際に稼動している Redmine でプラグインを作って試すのは危険が大きいです。まずはプラグイン開発のための環境を準備しましょう。

実際の Redmine の運用は Linux などで行うことが多いと思いますが、 Redmine は Windows 環境でも動作します。やはり、簡単に用意できるは Windows の PC ですし、自分で使うだけなら Windows の Redmine でも十分です。私もプラグインを作る時は自分の PC で行い、確認してから実際の Redmine にインストールしています。
そこで、開発環境には Windows 上の Redmine を使うことにして、その構築方法を説明をしていきたいと思います。ただし、 Redmine を立ち上げる方法はすでにいろんなサイトで紹介されているので、開発用の環境にポイントを絞っています。

通常の Redmine のインストール方法の説明については他のサイトを参考にしてください。以下のサイトなどがお勧めです。

開発用 Redmine のポイント

開発用の Redmine のポイントは 2 つです。
  1. development モードで起動する
  2. サーバ には WEBrick を使う

Rails では動作モードとして、 production モードと development モードが用意されています。実際に稼動する場合は production モードで動作させますが、開発に使う場合は development モードの方がちょっと便利です。
production モードでは動作を早くするため、一度読み込んだコードは覚えておいて、再度表示する場合はそれを使います。それに対して development モードの場合は、表示するたびに毎回読み込んでくれるので、変更を Redmine の再起動なしで確認することが出来ます。ただ、 ちょっと 便利と書いたのは後で説明しますが、全部即座に変更が適用されるわけではないので、意外と再起動は必要です。
ちなみに動作モードには test モードというのもあります。これはテストに使うものですが、このプラグインガイドでは test については書いてないので、説明については省略します。 Rails ではテストも簡単にできるのらしいですが、私は使ったことがありません。

実際に運用する場合はサーバには Apache などを使うと思います。しかし、これらのサーバの場合、エラーが発生したとき、ページに Internal Error とでるだけですが、 WEBrick を使っていると 詳細なエラーページ が出てきてデバッグにかなり役に立ちます。

使用ソフト

Redmine http://rubyforge.org/frs/?group_id=1850
Ruby Rumix http://ruby.morphball.net/rumix/
データベース SQLite http://www.sqlite.org/download.html

まず、Redmine の最新版をダウロードします。作成したプラグインを公開する場合にはなるべく最新版で確認する方がいいでしょう。

Ruby には、 ruby 本体と一緒にいろいろインストールしてくれる Rumix を使用します。
プラグイン開発ではコマンドラインで実行しなければならないことが多いので、特に nyacus というコマンドラインの実行をやりやすくするプログラムが役に立ちます。
インストールした ruby の gem を使って、 rails などの必要なライブラリなどをインストールすることになりますが、この ruby 自身や gem を使ってインストールするものはなるべく 本家のインストールページ で確認して Redmine のバージョンにあわせたものにして下さい。

データベースは SQLite にしました。多分、 Redmine が対応するデータベースの中では Windows 上で一番簡単に動作させられると思います。

データベース設定

Rails では 1 つの Rails プログラムをモードを切り替えて動作させたとしても、他のモードに影響を与えないようになっています。そのため、データベースもモードごとに別々に設定するようになっています。
データベース設定は config/database.example.yml をもとに config/database.yml を作成します。開発は development モードで起動するので、 このとき development 用の設定を環境に合わせて記述します。

development:
  adapter: sqlite3
  dbfile: db/redmine.db
  timeout: 5000

データベースの作成

データベースの作成コマンドなども development 用にする必要があります。
Rails の起動モードの変更は RAILS_ENV という環境変数で行います。ただし、環境変数の設定されていないデフォルトの起動モードが development モードなので、 "RAILS_ENV=production" といった環境変数の設定を省略するだけです。

 $ rake generate_session_store
 $ rake db:migrate 
 $ rake redmine:load_default_data

この 1 行目のセッションストアを作る作業は Redmine の途中のバージョンから必要になった機能なので、たまに説明が書かれていないサイトもあったりするので忘れないように注意してください。

サーバの起動

WEBrick で Redmine を起動します。
こちらも "-e production" の環境変数の設定を省略します。

 $ ruby script/server

起動後 http://127.0.0.1:3000/ にアクセスしてください。Windows の場合、 http://localhost:3000/ だとアクセスできないことがあります。

上手くアクセスできたら、開発環境の準備は完了です。これで自分の PC で Redmine が動くようになりました。
ただし、 development モードでかつ WEBrick を使っているとなるとかなり遅いですが、そこは我慢しましょう。


^ << >>

Updated by Mitsuyoshi Yoshida almost 11 years ago · 2 revisions