An extension that provides these key features:
- Syntax highlighting support for Structurizr DSL
- Allow content in Avolution Abacus to be used to create Structurizr files
- Allow content in Avolution Abacus to be used to generate Draw.io C4 diagrams directly
- Auto complete relevant data sections when writing up Structurizr C4 Model DSL files.
- Integration with Structurizr Lite to generate image files from DSL files.
- Integration with Draw.io to generate C4 diagrams from DSL files (coming soon)
Abacus browser that provides the ability to fetch entities from Abacus and then generate Structurizr files from any SoftwareSystem element.
Syntax highlighting following Structurizr convention for any file ending with the DSL
extenstion.
This extension will provide automated completion of SourceSystem and Container data values when editing Structurizr diagram files.
It is possible to configure the mapping of Structurizr types to those held in your Abacus repository.
Any DSL model can be exported as a workspace file for a locally installed Structurizr Lite instance to process.
Where desired, C4 and normal PlantUML diagrams can be exports from Structurizr model built when creating models from Abacus browser.
With the addition of embedded Draw.io support C4 diagrams can be generated directly from Abacus or via Structrurizr DSL files.
This extension only works with Avolution Abacus deployments that have the API enabled. Please check with your system administrator on the API status and what credentials you need to use to connect to the API.
The API credentials are not the same as those you use to edit content in Abacus.
This extension contributes the following settings:
abacus.host
: the hostname of the Abacus instance with the API you need to connect toabacus.port
: the port number of the API. Normally this is443
abacus.secure
: check this box if you want the enforce strict SSL rulesabacus.api
: The root URI of the API. By default Abacus sets this to/API
abacus.eeid
: The EEID of the architecture you want to query. There may be many architectures so ensure you use the correct one here. Failure to set a valid value will result in no matchesabacus.c4SoftwareSystem
: The component type that represents C4 Software Systems in Abacusabacus.c4Container
: The component type that represents C4 Containers in Abacusabacus.c4Component
: The component type that represents C4 Components in Abacusabacus.c4Person
: The component type that represents C4 Person in AbacusstructurizrLite.workspaceLocation
: The folder where the DSL workspace file to be written for local Structurizr Lite to loadstructurizrLite.server
: The URL of the local Structurizr Lite server used to fetch images from
This is a pre-release version and thus will have any number of issues or defects. As this only reads from the Abacus API there is no risk to the repository but completion may be inconsistent at times.
Here is a short summary of the key changes or updates of this release.
Fixed broken welcome message dialog.
Dependency updates and corrected change log.
First release under the Elsevier Open Source banner.
Introduction of embedded Draw.io capability.
Using Abacus EEID as variable names in Structurizr DSL files.
Added first version of integration with locally installed Structurizr Lite server for workspace to image rendering.
Added creation of C4 style PlantUML diagrams directly from Abacus Software System elements.
Various bug fixes.
Added activation of Abacus View when no DSL files are in the workspace.
Added creation of PlantUML diagrams directly from Abacus Software System elements.
Moved authentication to the Accounts capability in Visual Studio Code with a new Abacus Authentication Provider. This should provide for a more robust API connection handler.
Added Abacus browser and first version of Structurizr DSL auto generator.
Also will expand out Abacus entities when defining a container
Fixed some typographical errors and enhanced the README file
Initial release of Structurizr DSL Abacus Extension