Task 55 Scope – TOSCA Profile Purpose – To investigate if it makes sense for us to generate a TOSCA profile from the CIM Specifically – to generate TOSCA compliant YAML files from our model Includes – documenting how the UML model would be transformed to TOSCA YAML Excludes – none External Dependencies – none Assumptions – none Risks – none
Team Members Leader - Chris Hartley Members ???
IPR Declaration Is there any IPR associated with this presentation NO NOTICE: This contribution has been prepared to assist the ONF. This document is offered to the ONF as a basis for discussion and is not a binding proposal on Cisco or any other company. The requirements are subject to change in form and numerical value after more study. Cisco specifically reserves the right to add to, amend, or withdraw statements contained herein. THE INFORMATION HEREIN IS PROVIDED “AS IS,” WITHOUT ANY WARRANTIES OR REPRESENTATIONS, EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION, WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Need to determine Do we produce XML or YAML ? If we generate YAML, how do we validate it against TOSCA ? Might make sense to generate JSON, then convert it to YAML How is the YAML simple profile related to the full TOSCA standard ? https://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.2/os/TOSCA-Simple-Profile-YAML-v1.2-os.html The normative YAML file isn’t published by OASIS
TOSCA Metamodel http://blog.ubicity.com/2018/04/the-tosca-object-model.html “Node templates keep a reference to the node type that defines the schema for the properties in the node.” “ Run-time instances (i.e. nodes in an instance model) keep references to the node templates from which they were created” “Node types provide the specifications that turn generic nodes into reusable domain-specific components.”
TOSCA Abstract Model interpretation based on the YAML
UML Interpretation of the YAML Based on the supplied normative types YAML file
Artifacts “TOSCA Artifacts Types represent the types of packages and files used by the orchestrator when deploying TOSCA Node or Relationship Types or invoking their interfaces.”
Groups “TOSCA Group Types represent logical groupings of TOSCA nodes that have an implied membership relationship and may need to be orchestrated or managed together to achieve some result.”
Interfaces “Interfaces are reusable entities that define a set of operations that that can be included as part of a Node type or Relationship Type definition. ”
Nodes “The TOSCA Root Node Type is the default type that all other TOSCA base Node Types derive from. ”
Nodes & Capability
Policies “TOSCA Policy Types represent logical grouping of TOSCA nodes that have an implied relationship and need to be orchestrated or managed together to achieve some result.”
“This is the default (root) TOSCA Relationship Type definition that all other TOSCA Relationship Types derive from. ” Relationships
“This is the default (root) TOSCA Capability Type definition that all other TOSCA Capability Types derive from.” Capabilities
“This is the default (root) TOSCA Root Type definition that all complex TOSCA Data Types derive from.” Datatypes I added the pink ones !
Specific Nodes
Specific Nodes
TOSCA XML and YAML are two different standards “Backward and Forward Compatibility for TOSCA Simple Profile in YAML Version 1.0: Concept and Modelling Tooling Support” https://elib.uni-stuttgart.de/handle/11682/9486?locale=en