Docs: Add sphinxcontrib-mermaid for diagram migration 69/143469/3 master
authorMatthew Watkins <mwatkins@linuxfoundation.org>
Wed, 4 Mar 2026 17:00:17 +0000 (17:00 +0000)
committerMatthew Watkins <mwatkins@linuxfoundation.org>
Wed, 4 Mar 2026 18:19:29 +0000 (18:19 +0000)
Add sphinxcontrib-mermaid alongside existing blockdiag/seqdiag
extensions to prepare for migrating live diagrams from blockdiag
to Mermaid syntax.

The blockdiag/seqdiag extensions are abandoned and incompatible
with modern Python. The live diagram content in this repository
will be migrated to Mermaid syntax in a follow-up change, after
which blockdiag/seqdiag can be removed.

Issue-ID: CIMAN-33
Change-Id: I3819bb108563eef146b1fbe62d9c684c42c087e6
Signed-off-by: Claude <noreply@anthropic.com>
Signed-off-by: Matthew Watkins <mwatkins@linuxfoundation.org>
docs/conf.py
docs/delivery.rst
docs/requirements-docs.txt
docs/tox.ini

index dac0401..2efbfb2 100644 (file)
@@ -19,8 +19,7 @@ html_show_sphinx = False
 extensions = [
     'sphinx.ext.intersphinx',
     'sphinx.ext.graphviz',
 extensions = [
     'sphinx.ext.intersphinx',
     'sphinx.ext.graphviz',
-    'sphinxcontrib.blockdiag',
-    'sphinxcontrib.seqdiag',
+    'sphinxcontrib.mermaid',
     'sphinxcontrib.plantuml'
 ]
 
     'sphinxcontrib.plantuml'
 ]
 
index ccfab3f..347fc39 100644 (file)
@@ -6,27 +6,28 @@ Delivery
 
 Below is a diagram of the DMaaP Data Router project docker containers and the connections between them.
 
 
 Below is a diagram of the DMaaP Data Router project docker containers and the connections between them.
 
-.. blockdiag::
-
-
-   blockdiag layers {
-   orientation = portrait
-   MARIADB -> DR-PROV;
-   DR-PROV -> DR-NODE;
-   group l1 {
-       color = blue;
-       label = "dr-prov Container";
-       DR-PROV;
-       }
-   group l2 {
-       color = yellow;
-       label = "dr-node Container";
-       DR-NODE;
-       }
-   group l3 {
-       color = orange;
-       label = "MariaDb Container";
-       MARIADB;
-       }
-
-   }
+.. mermaid::
+
+   graph TD
+       MARIADB --> DR-PROV
+       DR-PROV --> DR-NODE
+
+       subgraph "dr-prov Container"
+           DR-PROV
+       end
+
+       subgraph "dr-node Container"
+           DR-NODE
+       end
+
+       subgraph "MariaDb Container"
+           MARIADB
+       end
+
+       classDef blue fill:#33f,stroke:#333,color:#fff
+       classDef yellow fill:#ff0,stroke:#333,color:#000
+       classDef orange fill:#f90,stroke:#333,color:#000
+
+       class DR-PROV blue
+       class DR-NODE yellow
+       class MARIADB orange
index 633f01b..ad38b46 100644 (file)
@@ -3,8 +3,7 @@ sphinx>=7.1.2
 sphinx-rtd-theme>=2.0.0
 
 # Diagram extensions
 sphinx-rtd-theme>=2.0.0
 
 # Diagram extensions
-sphinxcontrib-blockdiag>=3.0.0
-sphinxcontrib-seqdiag>=3.0.0
+sphinxcontrib-mermaid>=1.0.0
 sphinxcontrib-plantuml>=0.27
 
 # Quality & tooling
 sphinxcontrib-plantuml>=0.27
 
 # Quality & tooling
index 793862b..aed203c 100644 (file)
@@ -4,32 +4,25 @@ envlist = docs,docs-linkcheck,docs-spellcheck
 skipsdist = true
 
 [testenv:docs]
 skipsdist = true
 
 [testenv:docs]
-basepython = python3.11
+basepython = python3.13
 deps =
     -r{toxinidir}/requirements-docs.txt
     -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
 deps =
     -r{toxinidir}/requirements-docs.txt
     -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
-commands_pre =
-    ; blockdiag uses Pillow textsize() removed in Pillow 10; force-downgrade
-    pip install 'Pillow<10'
 commands =
     sphinx-build -W -q -b html -n -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/html
 
 [testenv:docs-linkcheck]
 commands =
     sphinx-build -W -q -b html -n -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/html
 
 [testenv:docs-linkcheck]
-basepython = python3.11
+basepython = python3.13
 deps =
     -r{toxinidir}/requirements-docs.txt
     -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
 deps =
     -r{toxinidir}/requirements-docs.txt
     -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
-commands_pre =
-    pip install 'Pillow<10'
 commands =
     sphinx-build -W -q -b linkcheck -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/linkcheck
 
 [testenv:docs-spellcheck]
 commands =
     sphinx-build -W -q -b linkcheck -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/linkcheck
 
 [testenv:docs-spellcheck]
-basepython = python3.11
+basepython = python3.13
 deps =
     -r{toxinidir}/requirements-docs.txt
     -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
 deps =
     -r{toxinidir}/requirements-docs.txt
     -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
-commands_pre =
-    pip install 'Pillow<10'
 commands =
     sphinx-build -q -b spelling -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/spellcheck
 commands =
     sphinx-build -q -b spelling -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/spellcheck