Вводные
- Перехожу на использование PlantUML при рисовании схем.
- Редактирую схемы через VSCode + Плагин + HTTP cервис (постоянно "разогрет" и моментально отрисовывает изменения)
- Для ведения проектов использую redmine 4.2
- Неудобно фиксировать схемы в redmine через скриншоты
Вариант решения
Установка
На хост с redmine установить PlantUML, для ubuntu "sudo apt install plantuml", но он относительно старой версии, поэтому после установки скачиваю jar файл из релизов оф. репозитория https://github.com/plantuml/plantuml и заменяю его в /usr/share/plantuml/plantuml.jar
Для работы требуется JRE, ставится через "sudo apt install default-jre"
Рабочий плагин на оф. сайте https://www.redmine.org/plugins/plantuml версии 0.4.1, но его можно найти на github https://github.com/dkd/plantuml, последняя версия 0.5.1 и видно что коммит с изменением совместимости под redmine 4.1.
Устанавливаю плагин через клонирование репозитория
cd /opt/redmine/plugins
git clone https://github.com/dkd/plantuml.git
После перезапуска web сервера будет ошибка, решается правкой в файле init.rb в папке плагина
requires_redmine version: '2.6'..'4.1'
на
requires_redmine version: '2.6'..'4.2'
Перезапускаю web сервер, запустился нормально, но при записи диаграммы в задаче выдает ошибку, причина - отсутствие настройки плагина.
Для решения нужно в настройках "модуля" указать путь к исполняемому файлу
В "PlantUML binary" указать "/usr/bin/plantuml"
Использование
Во всех полях редактирования текста появляется кнопка добавления обрамления схемы
Схема генерируется либо при сохранении либо при переходе на вкладку "Предпросмотр"
Положительным свойством формирования диаграмм через текст является возможность версионирования.
Схема на превью сформирована текстом
Например, мне нужно, чтобы вызывался не jar, а сервис. Правлю схему, что при сохранении наглядно видно в diff
В задаче получаю актуальное отображение схемы
Благодарю за внимание