LoginSignup
51
47

More than 5 years have passed since last update.

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

Posted at

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

51
47
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
51
47