structurizr / export

Export models and views to external formats.
https://docs.structurizr.com/export
Apache License 2.0
18 stars 28 forks source link

C4Plantuml export renders url property in wrong format #83

Closed toorog closed 10 months ago

toorog commented 10 months ago

Description

When exporting to C4Plantuml format, the URL property in the plantuml source is rendered the wrong way. It renders an URL as [[http://url.com]] instead of http://url.com which breaks the plantuml rendering process due to the resulting syntax error.

Steps to reproduce

  1. Use given example DSL file
  2. Run structurizr-cli export -f plantuml/c4plantuml -w example.dsl -o tmp
  3. Have a look at tmp/structurizr-deployment.puml
  4. Optionally run PlantUML (tested with 1.2023.12) on this file, which breaks because of the additional [[ and ]]

Screenshot

No response

Code sample

example.dsl

workspace {
    model {
        github = softwareSystem "GitHub" {
            url "https://github.com"
        }
        deploymentEnvironment "Demo" { 
            deploymentNode "Default"{
                softwareSystemInstance github
            }
        }
    }
    views {
        deployment * Demo deployment "Example deployment view" {
            include *

        }
    }
}

structurizr-deployment.puml (generated)

@startuml
set separator none
title Deployment - Demo

top to bottom direction

!include <C4/C4>
!include <C4/C4_Context>
!include <C4/C4_Deployment>

Deployment_Node(Demo.Default, "Default", $type="", $tags="", $link="") {
  System(Demo.Default.GitHub_1, "GitHub", $descr="", $tags="", $link="[[https://github.com]]")
}

SHOW_LEGEND(true)
@enduml

Configuration

structurizr-cli: 1.34.0 structurizr-java: 1.27.0 structurizr-dsl: 1.33.0 structurizr-export: 1.17.0 structurizr-import: v1.6.0

Severity

Major

Priority

I have no budget and there's no rush, please fix this for free

More information

No response