RedmineのWikiでUMLを記述する方法

Table of Content

RedmineのWikiにシーケンス図やユースケースなどのUMLを記述する方法について説明する。

前提

・JAVAが動くこと
・Redmineが動作すること
 Apache2でRedmineが動いていたものとする

手順

1.PlantUMLを下記よりダウンロードして任意のフォルダにおく
http://plantuml.sourceforge.net/download.html

この例では下記に配置したものとする.
 /share/plantuml.jar

2. ラッパー用のシェルスクリプトを記述する。
 この例では/usr/bin/plantuml に記述するものとする。

# !/bin/bash
/usr/bin/java -Djava.io.tmpdir=/var/tmp -jar /share/plantuml.jar ${@}

3. Redmine用のプラグインを下記からダウンロードする
https://github.com/cdwertmann/wiki_external_filter

4. 3のファイルをRedmineのpluginsフォルダにコピーする。
フォルダ名はwiki_external_filterとする。
ダウンロードした際のデフォルトのフォルダ名はwiki_external_filter_masterになっているので、名前を修正しておく。

保存先の例
/var/lib/redmine/plugins/wiki_external_filter

5. plugin_assetsフォルダに書き込み権限を与える。
 /var/lib/redmine/public/plugin_assets/

例:
chmod go+w /var/lib/redmine/public/plugin_assets/

6. 解凍したディレクトリに存在するconfig/wiki_external_filter.yml を redmineのconfigにコピーする。
 例:
  /var/lib/redmine/config

7. wiki_external_filter.ymlのplantumlにおけるパスを適切に指定する。
(この例だと修正不要のはず)

8. apache2の起動時のlocaleをutf-8とする。
 これを怠ると、日本語が適切に表示されなくなる。

 /etc/apache2/envvars の下記を修正
 export LANG=ja_JP.UTF-8
 
 なお、下記の戻り値がUTF-8ならば日本語が使えるようになる。
 Encoding.find("locale")

9. apache2を再起動

10.redmineの管理メニューより、キャッシュの保持時間を指定する。
  デフォルトは0であるが、この場合は、キャッシュを保持せず画像が絶対に表示されない。

  管理>プラグイン>Wiki External Filter Plugin の設定

  「Cache expiration time 」に十分大きな数値を入力
b0232065_03141636.png

11. 下記のような文章をWikiに記述する

{{plantuml
ジョニー-> ジャック: 求愛
ジャック-> サラ: 求愛
サラ->ジョニー: 求愛
}}

b0232065_03143326.png

その他メモ

・下記のページに一般的なRedmineのプラグインのインストール方法が記載されている。
http://www.redmine.org/projects/redmine/wiki/Plugins

・正常にプラグインが動作しない場合、ログを出力してデバッグするといい。
必要な箇所に以下のようなコードを挿入する。

Rails.logger.info "executing command: #{out['command']}"

その結果、以下のようなファイルにログが出力される。
/var/lib/redmine/log/production.log

「RedmineのWikiでUMLを記述する方法」への1件の返信

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です