From 03b5afc0888473cfc2883ca8fe138220bf1bf70d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Etxaniz=20Errazkin=2C=20I=C3=B1aki?= <inaki.etxaniz@tecnalia.com> Date: Tue, 25 Feb 2025 18:13:18 +0100 Subject: [PATCH] Update file README.md --- README.md | 48 +++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 60a02bb..cc8396b 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,56 @@ # puml includes -Utility project to include some common PlantUML files, that are used in the UML diagrams of the project +Utility project to test PlantUML files rendering and the "!include" directive in these files, that are used in the UML diagrams of the EMERALD project. -They have to be publicly available somewhere due that the "!include" directive of PlantUML doesn't work in Gitlab (see https://gitlab.com/gitlab-org/gitlab/-/issues/28847) +# !include in puml files +The typical "!include" directive of PlantUML (that search files in folders) doesn't work in Gitlab (see [Wiki Page Plantuml using !include](https://gitlab.com/gitlab-org/gitlab/-/issues/28847)). A workaround is to place the files in some url publicly available. The UML files of EMERALD typically include several common files to define common graphical elements (arrows, colors, names, etc.). For example: ``` - @startuml RCM Sequence Diagram -!include ..\roles.wsd -!include ..\color_pallette.wsd +**!include ..\roles.wsd** +**!include ..\color_pallette.wsd** [..] @enduml + +# PlantUML blocks +PlantUML blocks (**```plantuml** ... **```**) inside in markdown files didn't render in [Tecnalia's Gitlab](git.code.tecnalia.dev) (self-managed version), unlike in the Gitlab server where this is configured by default. +After completing the integration, PlantUML converts plantuml blocks to an HTML image tag, with the source pointing to the PlantUML instance. And the PlantUML diagram delimiters **@startuml/@enduml** aren’t required anymore, as these are replaced by the **plantuml** block. + +In markdown files (*.md): + + +**```plantuml** +Bob -> Alice : hello +Alice -> Bob : hi +**```** +For additional acceptable extensions, review the languages.yaml file. + +**07/2024**: This was solved [installing](https://docs.gitlab.com/administration/integration/plantuml/#configure-your-plantuml-server) the corresponding UML server and configuring git.code.tecnalia.dev to connect to it and finally render the plantUML text files as diagrams. + +# PlantUML files +PlantUML files (*.uml, *.puml...) not rendering in GitLab repos was a long-time known issue (https://gitlab.com/gitlab-org/gitlab/-/issues/17325). The workaround for this could be to check out the repos locally and see the figures using Visual Studio Code with a PlantUML plugin or similar tools. + +**02/2025**: It has been finally solved and included in the [release 19.7](https://gitlab.com/groups/gitlab-org/-/milestones/108) (see [merge request 179301](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179301)).Now the .pu or .puml files are rendered (when PlantUML integration is enabled) on the gitlab instance. It adds a rich view for graph files. Supported extensions are: +mermaid +plantuml +pu +puml +iuml +d2 +dot +gv +noml +vg +vl + +(Example: https://gitlab.com/schurzi/playground/-/blob/main/plantuml_include/included_part.iuml renders the diagram) + +Hopefully, this feature will be automatically translated to Tecnalia's Gitlab when the release (actual version is [v17.8.2](https://git.code.tecnalia.dev/help)) is updated. + +(Example: https://git.code.tecnalia.dev/emerald/public/puml-includes/-/blob/master/testDiagram.puml renders only text) + -- GitLab