Cloudnet TOSCA toolbox is an OASIS TOSCA processor for checking and adjusting TOSCA service templates.
TOSCA templates specify service structure and the procedure governing their lifecycle. Services are typically application, infrastructure or network services.
This set of tools is intended for syntax and type checking of any service templates written in TOSCA, including e.g. NFV descriptors.
It also allows for visualizing the associated architecture in different ways (UML, TOSCA, network diagrams). Have a look to this video.
A web portal based on this code is available at this url: https://toscatoolbox.orange.com.
- Prerequisites
- How to use it?
- Network diagrams generation
- TOSCA diagrams generation
- UML diagrams generation
- Using TOSCA script from GitHub actions
- Code status
To use this toolset, you'll need Docker, Python, PlantUML, nwdiag and dot. However, provided you have Docker, the others are available as containers as follows. You can build the Docker images by:
cd bin/
./build.sh
If you get some TOSCA 1.0, 1.1, 1.2 or 1.3 templates to check, once you've clone the repository, you can create a directory in the 'examples' directory, and copy your yaml files inside.
cd examples/
mkdir my_example
cp some_place/my_tosca_template_A.yaml my_example/
...
Load Cloudnet commands:
CLOUDNET_BINDIR=../../bin
. ${CLOUDNET_BINDIR}/cloudnet_rc.sh
Now, launching the command
translate my_tosca_template_A.yaml
will :
- check the file yaml,
- check the TOSCA syntax and types correction,
- translate it into the MIT Alloy language,
- generate .dot, .nwdiag and .plantuml templates.
generate_network_diagrams Results/NetworkDiagrams/*.nwdiag
generate_tosca_diagrams Results/ToscaDiagrams/*.dot
generate_uml2_diagrams Results/Uml2Diagrams/*.plantuml
This GitHub project actionTOSCAToolbox demonstrate how to launch a TSOSCA syntax checking from the actions.