tosca-parser/toscaparser/extensions/mec/TOSCA_mec_definition_1_0_0....

168 lines
5.7 KiB
YAML

# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
##########################################################################
# The content of this file reflects TOSCA NFV Profile in YAML version
# 1.0.0. It describes the definition for TOSCA NFV types including Node Type,
# Relationship Type, Capability Type and Interfaces.
##########################################################################
tosca_definitions_version: tosca_simple_profile_for_mec_1_0_0
##########################################################################
# Node Type.
# A Node Type is a reusable entity that defines the type of one or more
# Node Templates.
##########################################################################
node_types:
tosca.nodes.mec.MEA:
derived_from: tosca.nodes.Root # Or should this be its own top - level type?
properties:
id:
type: string
description: ID of this MEA
vendor:
type: string
description: name of the vendor who generate this MEA
version:
type: version
description: version of the software for this MEA
requirements:
- virtualLink:
capability: tosca.capabilities.mec.VirtualLinkable
relationship: tosca.relationships.mec.VirtualLinksTo
node: tosca.nodes.mec.VL
tosca.nodes.mec.VDU:
derived_from: tosca.nodes.Compute
capabilities:
high_availability:
type: tosca.capabilities.mec.HA
virtualbinding:
type: tosca.capabilities.mec.VirtualBindable
monitoring_parameter:
type: tosca.capabilities.mec.Metric
requirements:
- high_availability:
capability: tosca.capabilities.mec.HA
relationship: tosca.relationships.mec.HA
node: tosca.nodes.mec.VDU
occurrences: [ 0, 1 ]
tosca.nodes.mec.CP:
derived_from: tosca.nodes.network.Port
properties:
type:
type: string
required: false
requirements:
- virtualLink:
capability: tosca.capabilities.mec.VirtualLinkable
relationship: tosca.relationships.mec.VirtualLinksTo
node: tosca.nodes.mec.VL
- virtualBinding:
capability: tosca.capabilities.mec.VirtualBindable
relationship: tosca.relationships.mec.VirtualBindsTo
node: tosca.nodes.mec.VDU
attributes:
address:
type: string
tosca.nodes.mec.VL:
derived_from: tosca.nodes.network.Network
properties:
vendor:
type: string
required: true
description: name of the vendor who generate this VL
capabilities:
virtual_linkable:
type: tosca.capabilities.mec.VirtualLinkable
tosca.nodes.mec.VL.ELine:
derived_from: tosca.nodes.mec.VL
capabilities:
virtual_linkable:
occurrences: 2
tosca.nodes.mec.VL.ELAN:
derived_from: tosca.nodes.mec.VL
tosca.nodes.mec.VL.ETree:
derived_from: tosca.nodes.mec.VL
tosca.nodes.mec.FP:
derived_from: tosca.nodes.Root
properties:
policy:
type: string
required: false
description: name of the vendor who generate this VL
requirements:
- forwarder:
capability: tosca.capabilities.mec.Forwarder
relationship: tosca.relationships.mec.ForwardsTo
##########################################################################
# Relationship Type.
# A Relationship Type is a reusable entity that defines the type of one
# or more relationships between Node Types or Node Templates.
##########################################################################
relationship_types:
tosca.relationships.mec.VirtualLinksTo:
derived_from: tosca.relationships.network.LinksTo
valid_target_types: [ tosca.capabilities.mec.VirtualLinkable ]
tosca.relationships.mec.VirtualBindsTo:
derived_from: tosca.relationships.network.BindsTo
valid_target_types: [ tosca.capabilities.mec.VirtualBindable ]
tosca.relationships.mec.HA:
derived_from: tosca.relationships.Root
valid_target_types: [ tosca.capabilities.mec.HA ]
tosca.relationships.mec.Monitor:
derived_from: tosca.relationships.ConnectsTo
valid_target_types: [ tosca.capabilities.mec.Metric ]
tosca.relationships.mec.ForwardsTo:
derived_from: tosca.relationships.root
valid_target_types: [ tosca.capabilities.mec.Forwarder]
##########################################################################
# Capability Type.
# A Capability Type is a reusable entity that describes a kind of
# capability that a Node Type can declare to expose.
##########################################################################
capability_types:
tosca.capabilities.mec.VirtualLinkable:
derived_from: tosca.capabilities.network.Linkable
tosca.capabilities.mec.VirtualBindable:
derived_from: tosca.capabilities.network.Bindable
tosca.capabilities.mec.HA:
derived_from: tosca.capabilities.Root
valid_source_types: [ tosca.nodes.mec.VDU ]
tosca.capabilities.mec.HA.ActiveActive:
derived_from: tosca.capabilities.mec.HA
tosca.capabilities.mec.HA.ActivePassive:
derived_from: tosca.capabilities.mec.HA
tosca.capabilities.mec.Metric:
derived_from: tosca.capabilities.Root
tosca.capabilities.mec.Forwarder:
derived_from: tosca.capabilities.Root