Complex Service Example
This is an example for a complex service which embeds two instances of a simpler service. Instantiation of this complex service includes instantiation of 2 instances of the simple service.
Global type definitions
Global types
node_types:
onap.nodes.Service:
description: |
a base of the ONAP concrete service types generated by SDC
derived_from: tosca.nodes.Root
properties:
catalog_info:
type: onap.datatypes.CatalogInfo
description:
required: true
# generated by Design Time Catalog once, then never changed
classification:
type:
type: string
role:
type: string
function:
type: string
attributes:
instance_name:
type: string
description: the name of the run-time instance of in the deployment
interfaces:
# TODO: define service-level interfaces
Simple Service
Simple service topology
Simple service, topology
###### Simple service, topology
topology_template:
substitution_mappings:
node_type: operatorXXX.services.Service123
capabilities:
requirements:
- data_link: [node_01, unprotected]
- admin_link: [node_02, admin_link]
node_templates:
node_01:
type: vendorXXX.nodes.VerySpecialFirewall
requirements:
- protected:
node: vl_01
capability: link
- unprotected:
capability: onap.capabilities.Linkable # dangling
vl_01:
type: onap.nodes.VL
node_02:
type: vendorXXX.nodes.VerySpecialVnf
requirements:
- inbound_link:
node: vl_01
capability: link
- admin_link:
capability: onap.capabilities.Linkable # dangling
TODO: Drill down to the VNF topology
TODO: example for inputs
Simple Service Type
Simple service, type definition
###### Simple service, type definition
node_types:
operatorXXX.services.Service123:
derived_from: onap.nodes.Service
capabilities:
requirements:
- data_link:
capability: onap.capabilities.Linkable # dangling
- admin_link:
capability: onap.capabilities.Linkable # dangling