Update SdWanServiceTest CSAR to make it valid 99/60899/1
authormark.j.leonard <mark.j.leonard@gmail.com>
Thu, 16 Aug 2018 11:22:58 +0000 (12:22 +0100)
committermark.j.leonard <mark.j.leonard@gmail.com>
Thu, 16 Aug 2018 11:33:31 +0000 (12:33 +0100)
The SD-WAN test CSAR file is parseable using the sdc-tosca dependency
version 1.4.1 but it cannot be parsed using version 1.4.2 and above, as
there are missing data types leading to inheritance errors.

Correct the test CSAR file by adding the missing types. This has a
beneficial side-effect of increasing code coverage.

Issue-ID: AAI-1250
Change-Id: I41682b49d9d0a260a6feff05fda135949b46ec05
Signed-off-by: mark.j.leonard <mark.j.leonard@gmail.com>
12 files changed:
src/test/java/org/onap/aai/babel/csar/extractor/YamlExtractorTest.java
src/test/resources/compressedArtifacts/service-SdWanServiceTest-csar.csar
src/test/resources/ymlFiles/capabilities.yml [new file with mode: 0644]
src/test/resources/ymlFiles/data.yml
src/test/resources/ymlFiles/nodes.yml [new file with mode: 0644]
src/test/resources/ymlFiles/resource-Allotedresource-template.yml
src/test/resources/ymlFiles/resource-SdWanTestVsp-template-interface.yml [new file with mode: 0644]
src/test/resources/ymlFiles/resource-SdWanTestVsp-template.yml
src/test/resources/ymlFiles/resource-SdwantestvspNodesDummyServer-template.yml [new file with mode: 0644]
src/test/resources/ymlFiles/resource-TunnelXconntest-template-interface.yml [new file with mode: 0644]
src/test/resources/ymlFiles/service-SdWanServiceTest-template-interface.yml [new file with mode: 0644]
src/test/resources/ymlFiles/service-SdWanServiceTest-template.yml

index faeb536..e01a8f0 100644 (file)
@@ -111,9 +111,15 @@ public class YamlExtractorTest {
         final List<Artifact> ymlFiles = extractArchive("service-SdWanServiceTest-csar.csar");
         List<String> payloads = new ArrayList<>();
         payloads.add("ymlFiles/resource-SdWanTestVsp-template.yml");
+        payloads.add("ymlFiles/resource-SdWanTestVsp-template-interface.yml");
         payloads.add("ymlFiles/resource-TunnelXconntest-template.yml");
+        payloads.add("ymlFiles/resource-TunnelXconntest-template-interface.yml");
         payloads.add("ymlFiles/service-SdWanServiceTest-template.yml");
+        payloads.add("ymlFiles/service-SdWanServiceTest-template-interface.yml");
         payloads.add("ymlFiles/resource-Allotedresource-template.yml");
+        payloads.add("ymlFiles/resource-SdwantestvspNodesDummyServer-template.yml");
+        payloads.add("ymlFiles/nodes.yml");
+        payloads.add("ymlFiles/capabilities.yml");
         payloads.add("ymlFiles/artifacts.yml");
         payloads.add("ymlFiles/data.yml");
         payloads.add("ymlFiles/groups.yml");
index bbace0b..becfd7e 100644 (file)
Binary files a/src/test/resources/compressedArtifacts/service-SdWanServiceTest-csar.csar and b/src/test/resources/compressedArtifacts/service-SdWanServiceTest-csar.csar differ
diff --git a/src/test/resources/ymlFiles/capabilities.yml b/src/test/resources/ymlFiles/capabilities.yml
new file mode 100644 (file)
index 0000000..16049fc
--- /dev/null
@@ -0,0 +1,297 @@
+#
+# 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.
+#
+
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+#metadata:
+#  filename: tosca/capabilities.yml
+#  version: '1.0'
+  
+imports:
+- data.yml  
+
+capability_types:
+  tosca.capabilities.Root:
+    description: This is the default (root) TOSCA Capability Type definition that all other TOSCA Capability Types derive from.
+
+  tosca.capabilities.Node:
+    derived_from: tosca.capabilities.Root
+    description: The Node capability indicates the base capabilities of a TOSCA Node Type.
+
+  tosca.capabilities.Container:
+    derived_from: tosca.capabilities.Root
+    description: The Container capability, when included on a Node Type or Template definition, indicates that the node can act as a container for (or a host for) one or more other declared Node Types.
+    properties:
+      num_cpus:
+        description: Number of (actual or virtual) CPUs associated with the Compute node.
+        type: integer
+        required: false
+        constraints:
+        - greater_or_equal: 1
+      cpu_frequency:
+        description: Specifies the operating frequency of CPU's core. This property expresses the expected frequency of one (1) CPU as provided by the property "num_cpus".
+        type: scalar-unit.frequency
+        required: false
+        constraints:
+        - greater_or_equal: 0.1 GHz
+      disk_size:
+        description: Size of the local disk available to applications running on the Compute node (default unit is MB).
+        type: scalar-unit.size
+        required: false
+        constraints:
+        - greater_or_equal: 0 MB
+      mem_size:
+        description: Size of memory available to applications running on the Compute node (default unit is MB).
+        type: scalar-unit.size
+        required: false
+        constraints:
+        - greater_or_equal: 0 MB
+
+  tosca.capabilities.Endpoint:
+    derived_from: tosca.capabilities.Root
+    description: This is the default TOSCA type that should be used or extended to define a network endpoint capability. This includes the information to express a basic endpoint with a single port or a complex endpoint with multiple ports. By default the Endpoint is assumed to represent an address on a private network unless otherwise specified.
+    properties:
+      protocol:
+        description: 'The name of the protocol (i.e., the protocol prefix) that the
+          endpoint accepts (any OSI Layer 4-7 protocols). Examples: http, https, ftp,
+          tcp, udp, etc.'
+        type: string
+        default: tcp
+        required: true
+      port:
+        description: The optional port of the endpoint.
+        type: tosca.datatypes.network.PortDef
+        required: false
+      secure:
+        description: Requests for the endpoint to be secure and use credentials supplied on the ConnectsTo relationship.
+        type: boolean
+        default: false
+        required: false
+      url_path:
+        description: The optional URL path of the endpoint's address if applicable for the protocol.
+        type: string
+        required: false
+      port_name:
+        description: The optional name (or ID) of the network port this endpoint should be bound to.
+        type: string
+        required: false
+      network_name:
+        description: 'The optional name (or ID) of the network this endpoint should
+          be bound to. network_name: PRIVATE | PUBLIC | <network_name> | <network_id>.'
+        type: string
+        default: PRIVATE
+        required: false
+      initiator:
+        description: The optional indicator of the direction of the connection.
+        type: string
+        default: source
+        required: false
+        constraints:
+        - valid_values:
+          - source
+          - target
+          - peer
+      ports:
+        description: The optional map of ports the Endpoint supports (if more than one).
+        type: map
+        entry_schema:
+          type: tosca.datatypes.network.PortSpec
+        required: false
+        constraints:
+        - min_length: 1
+    attributes:
+      ip_address:
+        description: 'Note: This is the IP address as propagated up by the associated
+          node''s host (Compute) container.'
+        type: string
+
+  tosca.capabilities.Endpoint.Public:
+    derived_from: tosca.capabilities.Endpoint
+    description: |-
+      This capability represents a public endpoint which is accessible to the general internet (and its public IP address ranges).
+      This public endpoint capability also can be used to create a floating (IP) address that the underlying network assigns from a pool allocated from the application's underlying public network. This floating address is managed by the underlying network such that can be routed an application's private address and remains reliable to internet clients.
+    properties:
+      network_name:
+        type: string
+        default: PUBLIC
+        constraints:
+        - equal: PUBLIC
+
+  tosca.capabilities.Endpoint.Admin:
+    derived_from: tosca.capabilities.Endpoint
+    description: This is the default TOSCA type that should be used or extended to define a specialized administrator endpoint capability.
+    properties:
+      secure:
+        description: Requests for the endpoint to be secure and use credentials supplied on the ConnectsTo relationship.
+        type: boolean
+        default: true
+        constraints:
+        - equal: true
+
+  tosca.capabilities.Endpoint.Database:
+    derived_from: tosca.capabilities.Endpoint
+    description: This is the default TOSCA type that should be used or extended to define a specialized database endpoint capability.
+
+  tosca.capabilities.Attachment:
+    derived_from: tosca.capabilities.Root
+    description: This is the default TOSCA type that should be used or extended to define an attachment capability of a (logical) infrastructure device node (e.g., BlockStorage node).
+
+  tosca.capabilities.OperatingSystem:
+    derived_from: tosca.capabilities.Root
+    description: This is the default TOSCA type that should be used to express an Operating System capability for a node.
+    properties:
+      architecture:
+        description: 'The Operating System (OS) architecture. Examples of valid values
+          include: x86_32, x86_64, etc.'
+        type: string
+        required: false
+      type:
+        description: 'The Operating System (OS) type. Examples of valid values include:
+          linux, aix, mac, windows, etc.'
+        type: string
+        required: false
+      distribution:
+        description: 'The Operating System (OS) distribution. Examples of valid values
+          for a "type" of "Linux" would include: debian, fedora, rhel and ubuntu.'
+        type: string
+        required: false
+      version:
+        description: The Operating System version.
+        type: version
+        required: false
+
+  tosca.capabilities.Scalable:
+    derived_from: tosca.capabilities.Root
+    description: This is the default TOSCA type that should be used to express a scalability capability for a node.
+    properties:
+      min_instances:
+        description: This property is used to indicate the minimum number of instances that should be created for the associated TOSCA Node Template by a TOSCA orchestrator.
+        type: integer
+        default: 1
+      max_instances:
+        description: This property is used to indicate the maximum number of instances that should be created for the associated TOSCA Node Template by a TOSCA orchestrator.
+        type: integer
+        default: 1
+      default_instances:
+        description: 'An optional property that indicates the requested default number of instances that should be the starting number of instances a TOSCA orchestrator should attempt to allocate. Note The value for this property MUST be in
+          the range between the values set for "min_instances" and "max_instances"
+          properties.'
+        type: integer
+        required: false
+
+  tosca.capabilities.network.Bindable:
+    derived_from: tosca.capabilities.Node
+    description: A node type that includes the Bindable capability indicates that it can be bound to a logical network association via a network port.
+
+  tosca.capabilities.network.Linkable:
+    derived_from: tosca.capabilities.Node
+    description: A node type that includes the Linkable capability indicates that it can be pointed by tosca.relationships.network.LinksTo relationship type.
+
+  tosca.capabilities.Container.Docker:
+    derived_from: tosca.capabilities.Container
+    properties:
+      version:
+        type: list
+        entry_schema: version
+        required: false
+      publish_all:
+        type: boolean
+        default: false
+        required: false
+      publish_ports:
+        type: list
+        entry_schema: PortSpec
+        required: false
+      expose_ports:
+        type: list
+        entry_schema: PortSpec
+        required: false
+      volumes:
+        type: list
+        entry_schema: string
+        required: false
+  org.openecomp.capabilities.attachment.DeploymentFlavor:
+    derived_from: tosca.capabilities.Attachment
+    description: The Node capability indicates the base capabilities of a TOSCA Node Type.
+    properties:
+      DeploymentFlavor:
+        type: map
+        description: Deployment flavors instance
+        required: true
+        status: supported
+        entry_schema:
+            type: org.openecomp.datatypes.DeploymentFlavor     
+
+  org.openecomp.capabilities.metric.SnmpTrap:
+    derived_from: org.openecomp.capabilities.Metric
+    description: A node type that includes the Metric capability indicates that it can be monitored using snmp trap.
+    properties:
+      oid:
+        description: Object Id of the metric
+        type: string
+        status: supported
+        required: true
+
+  org.openecomp.capabilities.AllottedResource:
+    derived_from: tosca.capabilities.Root
+
+  org.openecomp.capabilities.metric.SnmpPolling:
+    derived_from: org.openecomp.capabilities.Metric
+    description: A node type that includes the Metric capability indicates that it can be monitored using snmp polling.
+    properties:
+      oid:
+        description: Object Id of the metric
+        type: string
+        status: supported
+        required: true
+
+  org.openecomp.capabilities.metric.Ceilometer:
+    derived_from: org.openecomp.capabilities.Metric
+    description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+    properties:
+      name:
+        description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+        type: string
+        status: supported
+        required: true
+
+  org.openecomp.capabilities.Metric:
+    derived_from: tosca.capabilities.Endpoint
+    description: A node type that includes the Metric capability indicates that it can be monitored.
+    properties:
+      unit:
+        description: Unit of the metric value
+        type: string
+        status: supported
+        required: true
+      description:
+        description: Description of the metric
+        type: string
+        status: supported
+        required: false
+      type:
+        description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+        type: string
+        status: supported
+        required: true
+      category:
+        description: Category of the metric, for an example, compute, disk, network, storage and etc.
+        type: string
+        status: supported
+        required: false
+    attributes:
+      value:
+        description: Runtime monitored value
+        type: string
+        status: supported
index 75e109b..13be5e9 100644 (file)
@@ -43,7 +43,7 @@ data_types:
 
     json:
       derived_from: tosca.datatypes.Root
-         
+
     scalar-unit:
       derived_from: tosca.datatypes.Root
 
@@ -2090,7 +2090,7 @@ data_types:
     org.openecomp.datatypes.Root:
       derived_from: tosca.datatypes.Root
       description: >
-        The AT&T root Data Type all other Data Types derive from
+        The root Data Type all other Data Types derive from
       properties:
         supplemental_data:
           type: map
diff --git a/src/test/resources/ymlFiles/nodes.yml b/src/test/resources/ymlFiles/nodes.yml
new file mode 100644 (file)
index 0000000..16297cc
--- /dev/null
@@ -0,0 +1,2371 @@
+#
+# 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.
+#
+
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+#metadata:
+#  filename: tosca/nodes.yml
+#  version: '1.0'
+
+imports:
+ - data.yml
+ - artifacts.yml
+
+node_types:
+  tosca.nodes.Root:
+    description: The TOSCA Root Node Type is the default type that all other TOSCA base Node Types derive from. This allows for all TOSCA nodes to have a consistent set of features for modeling and management (e.g., consistent definitions for requirements, capabilities and lifecycle interfaces).
+    attributes:
+      tosca_id:
+        description: A unique identifier of the realized instance of a Node Template that derives from any TOSCA normative type.
+        type: string
+      tosca_name:
+        description: This attribute reflects the name of the Node Template as defined in the TOSCA service template. This name is not unique to the realized instance model of corresponding deployed application as each template in the model can result in one or more instances (e.g., scaled) when orchestrated to a provider environment.
+        type: string
+      state:
+        description: The state of the node instance.
+        type: string
+        default: initial
+    capabilities:
+      feature:
+        type: tosca.capabilities.Node
+    requirements:
+    - dependency:
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+        occurrences:
+        - 0
+        - UNBOUNDED
+    interfaces:
+      standard:
+        type: tosca.interfaces.node.lifecycle.Standard
+
+  tosca.nodes.ObjectStorage:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA ObjectStorage node represents storage that provides the ability to store data as objects (or BLOBs of data) without consideration for the underlying filesystem or devices.
+    properties:
+      name:
+        description: The logical name of the object store (or container).
+        type: string
+      size:
+        description: The requested initial storage size (default unit is in Gigabytes).
+        type: scalar-unit.size
+        required: false
+        constraints:
+        - greater_or_equal: 0 GB
+      maxsize:
+        description: The requested maximum storage size (default unit is in Gigabytes).
+        type: scalar-unit.size
+        required: false
+        constraints:
+        - greater_or_equal: 0 GB
+    capabilities:
+      storage_endpoint:
+        type: tosca.capabilities.Endpoint
+
+  tosca.nodes.DBMS:
+    derived_from: tosca.nodes.SoftwareComponent
+    description: The TOSCA DBMS node represents a typical relational, SQL Database Management System software component or service.
+    properties:
+      root_password:
+        description: The optional root password for the DBMS server.
+        type: string
+        required: false
+      port:
+        description: The DBMS server's port.
+        type: integer
+        required: false
+    capabilities:
+      host:
+        type: tosca.capabilities.Container
+        valid_source_types:
+        - tosca.nodes.Database
+
+  tosca.nodes.WebApplication:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA WebApplication node represents a software application that can be managed and run by a TOSCA WebServer node. Specific types of web applications such as Java, etc. could be derived from this type.
+    properties:
+      context_root:
+        description: The web application's context root which designates the application's URL path within the web server it is hosted on.
+        type: string
+        required: false
+    capabilities:
+      app_endpoint:
+        type: tosca.capabilities.Endpoint
+    requirements:
+    - host:
+        capability: tosca.capabilities.Container
+        node: tosca.nodes.WebServer
+        relationship: tosca.relationships.HostedOn
+
+  tosca.nodes.Compute:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA Compute node represents one or more real or virtual processors of software applications or services along with other essential local resources. Collectively, the resources the compute node represents can logically be viewed as a (real or virtual) "server".
+    attributes:
+      private_address:
+        description: The primary private IP address assigned by the cloud provider that applications may use to access the Compute node.
+        type: string
+      public_address:
+        description: The primary public IP address assigned by the cloud provider that applications may use to access the Compute node.
+        type: string
+      networks:
+        description: The list of logical networks assigned to the compute host instance and information about them.
+        type: map
+        entry_schema:
+          type: tosca.datatypes.network.NetworkInfo
+      ports:
+        description: The list of logical ports assigned to the compute host instance and information about them.
+        type: map
+        entry_schema:
+          type: tosca.datatypes.network.PortInfo
+    capabilities:
+      host:
+        type: tosca.capabilities.Container
+        valid_source_types:
+        - tosca.nodes.SoftwareComponent
+      binding:
+        type: tosca.capabilities.network.Bindable
+      os:
+        type: tosca.capabilities.OperatingSystem
+      scalable:
+        type: tosca.capabilities.Scalable
+    requirements:
+    - local_storage:
+        capability: tosca.capabilities.Attachment
+        node: tosca.nodes.BlockStorage
+        relationship: tosca.relationships.AttachesTo
+        occurrences:
+        - 0
+        - UNBOUNDED
+
+  tosca.nodes.network.Network:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA Network node represents a simple, logical network service.
+    properties:
+      ip_version:
+        description: The IP version of the requested network.
+        type: integer
+        default: 4
+        required: false
+        constraints:
+        - valid_values:
+          - 4
+          - 6
+      cidr:
+        description: The cidr block of the requested network.
+        type: string
+        required: false
+      start_ip:
+        description: The IP address to be used as the 1st one in a pool of addresses derived from the cidr block full IP range.
+        type: string
+        required: false
+      end_ip:
+        description: The IP address to be used as the last one in a pool of addresses derived from the cidr block full IP range.
+        type: string
+        required: false
+      gateway_ip:
+        description: The gateway IP address.
+        type: string
+        required: false
+      network_name:
+        description: An Identifier that represents an existing Network instance in the underlying cloud infrastructure - OR - be used as the name of the new created network.
+        type: string
+        required: false
+      network_id:
+        description: An Identifier that represents an existing Network instance in the underlying cloud infrastructure. This property is mutually exclusive with all other properties except network_name.
+        type: string
+        required: false
+      segmentation_id:
+        description: A segmentation identifier in the underlying cloud infrastructure (e.g., VLAN id, GRE tunnel id). If the segmentation_id is specified, the network_type or physical_network properties should be provided as well.
+        type: string
+        required: false
+      network_type:
+        description: Optionally, specifies the nature of the physical network in the underlying cloud infrastructure. Examples are flat, vlan, gre or vxlan. For flat and vlan types, physical_network should be provided too.
+        type: string
+        required: false
+      physical_network:
+        description: Optionally, identifies the physical network on top of which the network is implemented, e.g. physnet1. This property is required if network_type is flat or vlan.
+        type: string
+        required: false
+      dhcp_enabled:
+        description: Indicates the TOSCA container to create a virtual network instance with or without a DHCP service.
+        type: boolean
+        default: true
+        required: false
+    capabilities:
+      link:
+        type: tosca.capabilities.network.Linkable
+
+  tosca.nodes.WebServer:
+    derived_from: tosca.nodes.SoftwareComponent
+    description: This TOSCA WebServer Node Type represents an abstract software component or service that is capable of hosting and providing management operations for one or more WebApplication nodes.
+    capabilities:
+      data_endpoint:
+        type: tosca.capabilities.Endpoint
+      admin_endpoint:
+        type: tosca.capabilities.Endpoint.Admin
+      host:
+        type: tosca.capabilities.Container
+        valid_source_types:
+        - tosca.nodes.WebApplication
+
+  tosca.nodes.Container.Application:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA Container Application node represents an application that requires Container-level virtualization technology.
+    requirements:
+    - host:
+        capability: tosca.capabilities.Container
+        relationship: tosca.relationships.HostedOn
+
+  tosca.nodes.Container.Runtime:
+    derived_from: tosca.nodes.SoftwareComponent
+    description: The TOSCA Container Runtime node represents operating system-level virtualization technology used to run multiple application services on a single Compute host.
+    capabilities:
+      host:
+        type: tosca.capabilities.Container
+      scalable:
+        type: tosca.capabilities.Scalable
+
+  tosca.nodes.SoftwareComponent:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA SoftwareComponent node represents a generic software component that can be managed and run by a TOSCA Compute Node Type.
+    properties:
+      component_version:
+        description: The optional software component's version.
+        type: version
+        required: false
+      admin_credential:
+        description: The optional credential that can be used to authenticate to the software component.
+        type: tosca.datatypes.Credential
+        required: false
+    requirements:
+    - host:
+        capability: tosca.capabilities.Container
+        node: tosca.nodes.Compute
+        relationship: tosca.relationships.HostedOn
+
+  tosca.nodes.BlockStorage:
+    derived_from: tosca.nodes.Root
+    description: ''
+    properties:
+      size:
+        description: The requested storage size (default unit is MB).
+        type: scalar-unit.size
+        constraints:
+        - greater_or_equal: 1 MB
+      volume_id:
+        description: ID of an existing volume (that is in the accessible scope of the requesting application).
+        type: string
+        required: false
+      snapshot_id:
+        description: Some identifier that represents an existing snapshot that should be used when creating the block storage (volume).
+        type: string
+        required: false
+    capabilities:
+      attachment:
+        type: tosca.capabilities.Attachment
+
+  tosca.nodes.network.Port:
+    derived_from: tosca.nodes.Root
+    description: |-
+      The TOSCA Port node represents a logical entity that associates between Compute and Network normative types.
+      The Port node type effectively represents a single virtual NIC on the Compute node instance.
+    properties:
+      ip_address:
+        description: Allow the user to set a fixed IP address. Note that this address is a request to the provider which they will attempt to fulfill but may not be able to dependent on the network the port is associated with.
+        type: string
+        required: false
+      order:
+        description: 'The order of the NIC on the compute instance (e.g. eth2). Note:
+          when binding more than one port to a single compute (aka multi vNICs) and
+          ordering is desired, it is *mandatory* that all ports will be set with an
+          order value and. The order values must represent a positive, arithmetic
+          progression that starts with 0 (e.g. 0, 1, 2, ..., n).'
+        type: integer
+        default: 0
+        required: false
+        constraints:
+        - greater_or_equal: 0
+      is_default:
+        description: Set is_default=true to apply a default gateway route on the running compute instance to the associated network gateway. Only one port that is associated to single compute node can set as default=true.
+        type: boolean
+        default: false
+        required: false
+      ip_range_start:
+        description: Defines the starting IP of a range to be allocated for the compute instances that are associated by this Port. Without setting this property the IP allocation is done from the entire CIDR block of the network.
+        type: string
+        required: false
+      ip_range_end:
+        description: Defines the ending IP of a range to be allocated for the compute instances that are associated by this Port. Without setting this property the IP allocation is done from the entire CIDR block of the network.
+        type: string
+        required: false
+    attributes:
+      ip_address:
+        description: The IP address would be assigned to the associated compute instance.
+        type: string
+    requirements:
+    - link:
+        capability: tosca.capabilities.network.Linkable
+        relationship: tosca.relationships.network.LinksTo
+    - binding:
+        capability: tosca.capabilities.network.Bindable
+        relationship: tosca.relationships.network.BindsTo
+
+  tosca.nodes.LoadBalancer:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA Load Balancer node represents logical function that be used in conjunction with a Floating Address to distribute an application's traffic (load) across a number of instances of the application (e.g., for a clustered or scaled application).
+    capabilities:
+      client:
+        description: The Floating (IP) client's on the public network can connect to.
+        type: tosca.capabilities.Endpoint.Public
+        occurrences:
+        - 0
+        - UNBOUNDED
+    requirements:
+    - application:
+        capability: tosca.capabilities.Endpoint
+        relationship: tosca.relationships.RoutesTo
+        occurrences:
+        - 0
+        - UNBOUNDED
+
+  tosca.nodes.Database:
+    derived_from: tosca.nodes.Root
+    description: The TOSCA Database node represents a logical database that can be managed and hosted by a TOSCA DBMS node.
+    properties:
+      name:
+        description: The logical database Name.
+        type: string
+      port:
+        description: The port the database service will use to listen for incoming data and requests.
+        type: integer
+        required: false
+      user:
+        description: The special user account used for database administration.
+        type: string
+        required: false
+      password:
+        description: The password associated with the user account provided in the 'user' property.
+        type: string
+        required: false
+    capabilities:
+      database_endpoint:
+        type: tosca.capabilities.Endpoint.Database
+    requirements:
+    - host:
+        capability: tosca.capabilities.Container
+        node: tosca.nodes.DBMS
+        relationship: tosca.relationships.HostedOn
+  org.openecomp.resource.abstract.nodes.AbstractSubstitute:
+    derived_from: tosca.nodes.Root
+    properties:
+      service_template_filter:
+        type: org.openecomp.datatypes.heat.substitution.SubstitutionFiltering
+        description: Substitution Filter
+        required: true
+        status: SUPPORTED
+
+  org.openecomp.resource.vl.extVL:
+    derived_from: tosca.nodes.Root
+    description: VF Tenant oam protected network
+    properties:
+      network_type:
+        type: string
+        required: true
+        description: ECOMP supported network types. 
+      network_role:
+        type: string
+        required: ture
+        description: >
+          Unique label that defines the role that this network performs.  
+          example: vce oam network, vnat sr-iov1 network
+      network_scope:
+        type: string
+        constraints:
+          valid_values: ["VF", "SERVICE", "GLOBAL"]
+        description: >
+          Uniquely identifies the network scope. Valid values for the network scope  
+          includes:
+          VF - VF-level network. Intra-VF network which connects the VFCs (VMs)
+          inside the VF.
+          SERVICE - Service-level network. Intra-Service network which connects 
+          the VFs within the service
+          GLOBAL - Global network which can be shared by multiple services
+      network_technology:
+        type: string
+        required: true
+        description: ECOMP supported network technology
+      exVL_naming:
+        type: org.openecomp.datatypes.Naming
+        required: true
+      network_homing:
+        type: org.openecomp.datatypes.EcompHoming
+        required: true
+      network_assignments:
+        type: org.openecomp.datatypes.network.NetworkAssignments
+        required: true
+      provider_network:
+        type: org.openecomp.datatypes.network.ProviderNetwork
+        required: true
+      network_flows:
+        type: org.openecomp.datatypes.network.NetworkFlows
+        required: false
+    capabilities:
+      virtual_linkable:
+        type: tosca.capabilities.network.Linkable
+
+  org.openecomp.resource.vfc.nodes.Compute:
+    derived_from: tosca.nodes.Compute
+    capabilities:
+      disk.ephemeral.size:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      instance:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      memory:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.iops:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.read.requests:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      cpu.delta:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.capacity:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.read.bytes:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.write.bytes:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.latency:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.read.bytes.rate:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.usage:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      cpu_util:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.allocation:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.write.requests.rate:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.write.bytes.rate:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.latency:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      cpu:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.write.requests:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.write.bytes:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.read.requests:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.root.size:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.write.bytes.rate:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      vcpus:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.iops:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.usage:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.read.requests.rate:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.write.requests.rate:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.allocation:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.read.bytes.rate:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.read.bytes:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      memory.usage:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.capacity:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      memory.resident:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.write.requests:
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        type: org.openecomp.capabilities.metric.Ceilometer
+        occurrences:
+        - 1
+        - UNBOUNDED
+
+  org.openecomp.resource.abstract.nodes.DFAbstractSubstitute:
+    derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+    properties:
+      license_feature_group_ref:
+        description: refrence to license feature group
+        type: string
+        status: supported
+        required: true
+    requirements:
+    - deployment_flavor:
+        capability: org.openecomp.capabilities.attachment.DeploymentFlavor
+        node: org.openecomp.resource.nodes.DeploymentFlavor
+        relationship: org.openecomp.relationships.AttachesTo
+        occurrences:
+        - 1
+        - UNBOUNDED
+
+  org.openecomp.resource.abstract.nodes.VFC: 
+    derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+    properties: 
+      nfc_function:
+         type: string
+      high_availablity:
+        type: string
+        description: high_availablity
+        required: false
+        status: SUPPORTED
+      vm_image_name:
+        type: string
+        description: Master image_name volume id
+        required: true
+        status: SUPPORTED
+      vm_flavor_name:
+        type: string
+        description: Master image_name volume id
+        required: true
+        status: SUPPORTED
+      nfc_naming_code:
+        type: string
+        description: nfc code for instance naming
+        required: false
+        status: SUPPORTED
+      vm_type_tag:
+        type: string
+        description: vm type based on naming Convention
+        required: false
+        status: SUPPORTED
+      nfc_naming:
+        type: org.openecomp.datatypes.Naming
+        description: vfc naming
+      min_instances:
+        type: integer
+        description: Minimum number of VFC Instances
+        required: false
+        default: 0
+        status: SUPPORTED
+        constraints:
+        - greater_or_equal: 0
+      max_instances:
+        type: integer
+        description: Maximum number of VFC Instances
+        required: false
+        status: SUPPORTED
+        constraints:
+        - greater_or_equal: 1
+
+  org.openecomp.resource.vl.ELine:
+    derived_from: org.openecomp.resource.vl.nodes.network.VL
+    capabilities:
+      linkable:
+        type: tosca.capabilities.network.Linkable
+        occurrences:
+        - 0
+        - 2
+
+  org.openecomp.resource.cp.nodes.network.SubInterface:
+    derived_from: tosca.nodes.network.Port
+
+  org.openecomp.resource.vl.internalVL:
+    derived_from: tosca.nodes.network.Network
+    description: The ECOMP internal (VF-level) Virtual Link
+
+  org.openecomp.resource.cp.nodes.network.Port:
+    derived_from: tosca.nodes.network.Port
+    properties:
+      network_role: 
+        type: string
+        required: true
+        description: identical to VL network_role
+      order:
+        type: integer
+        required: true
+        description: The order of the CP on the compute instance (e.g. eth2).
+      network_role_tag:
+        description: Must correlate to the set of defined network-role tag identifiers from the associated HEAT template
+        type: string
+        required: true
+      mac_requirements:
+        description: identifies MAC address assignments to the CP
+        type: org.openecomp.datatypes.network.MacRequirements
+        required: false
+      vlan_requirements:
+        description: identifies vlan address assignments to the CP
+        type: list
+        entry_schema:
+          type: org.openecomp.datatypes.network.VlanRequirements
+        required: false
+      ip_requirements:
+        description: identifies IP requirements to the CP
+        type: list
+        entry_schema:
+          type: org.openecomp.datatypes.network.IpRequirements
+        required: true  
+      exCP_naming:
+          type: org.openecomp.datatypes.Naming
+      subnetpoolid:
+          type: string
+    capabilities:
+      network.incoming.packets.rate:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: packet/s
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.incoming.packets.rate
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Average rate of incoming packets
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Gauge
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+      network.outgoing.bytes:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: B
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.outgoing.bytes
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Number of outgoing bytes
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Cumulative
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+      network.outgoing.packets.rate:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: packet/s
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.outgoing.packets.rate
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Average rate of outgoing packets
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Gauge
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+      network.outpoing.packets:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: packet
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.outpoing.packets
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Number of outgoing packets
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Cumulative
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+      network.incoming.bytes.rate:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: B/s
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.incoming.bytes.rate
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Average rate of incoming bytes
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Gauge
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+      network.incoming.bytes:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: B
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.incoming.bytes
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Number of incoming bytes
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Cumulative
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+      network.outgoing.bytes.rate:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: B/s
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.outgoing.bytes.rate
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Average rate of outgoing bytes
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Gauge
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+      network.incoming.packets:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        properties:
+          unit:
+            type: string
+            description: Unit of the metric value
+            required: true
+            default: packet
+            status: SUPPORTED
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+            default: network.incoming.packets
+            status: SUPPORTED
+          description:
+            type: string
+            description: Description of the metric
+            required: false
+            default: Number of incoming packets
+            status: SUPPORTED
+          type:
+            type: string
+            description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+            required: true
+            default: Cumulative
+            status: SUPPORTED
+          category:
+            type: string
+            description: Category of the metric, for an example, compute, disk, network, storage and etc.
+            required: false
+            default: network
+            status: SUPPORTED
+        occurrences:
+        - 1
+        - UNBOUNDED
+
+  org.openecomp.resource.nodes.DeploymentFlavor:
+    derived_from: tosca.nodes.Root
+    capabilities:
+      deployment_flavor:
+        description: Allowed deployment flavors of an abstract node
+        type: org.openecomp.capabilities.attachment.DeploymentFlavor
+        occurrences:
+        - 1
+        - UNBOUNDED
+
+  org.openecomp.resource.cp.extCP:
+    derived_from: tosca.nodes.Root
+    description: The SDC Connection Point base type all other CP derive from
+    properties:
+      network_role: 
+        type: string
+        required: true
+        description: identical to VL network_role
+      order:
+        type: integer
+        required: true
+        description: The order of the CP on the compute instance (e.g. eth2).
+      network_role_tag:
+        type: string
+        required: true
+        description: Must correlate to the set of defined “network-role” tag identifiers from the associated HEAT template
+      mac_requirements:
+        type: org.openecomp.datatypes.network.MacRequirements
+        required: false
+        description: identifies MAC address assignments to the CP
+      vlan_requirements:
+        type: list
+        entry_schema:
+          type: org.openecomp.datatypes.network.VlanRequirements
+        required: false
+        description: identifies vlan address assignments to the CP
+      ip_requirements:
+         type: list
+         entry_schema:
+           type: org.openecomp.datatypes.network.IpRequirements
+         required: true
+         description: identifies IP requirements to the CP 
+      exCP_naming:
+          type: org.openecomp.datatypes.Naming
+      subnetpoolid:
+          type: string
+    requirements: 
+    - virtualLink:
+        capability: tosca.capabilities.network.Linkable
+        relationship: tosca.relationships.network.LinksTo 
+    - virtualBinding:
+        capability: tosca.capabilities.network.Bindable
+        relationship: tosca.relationships.network.BindsTo
+    - external_virtualLink:
+        capability: tosca.capabilities.network.Linkable
+        relationship: tosca.relationships.network.LinksTo
+        node: org.openecomp.resource.vl.VL
+    capabilities:
+      internal_connectionPoint:
+         type: tosca.capabilities.Node
+         valid_source_type: [tosca.nodes.network.Port]
+
+  org.openecomp.resource.vfc.nodes.volume:
+    derived_from: tosca.nodes.BlockStorage
+    
+  org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute:
+    derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+    properties:
+      availability_zone:
+        type: string
+        description: Availability zone to create servers in
+        required: false
+        status: SUPPORTED
+      static_routes_list:
+        type: list
+        description: Static routes enabled
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: boolean
+      availability_zone_enable:
+        type: boolean
+        description: Indicates availability zone is enabled
+        required: false
+        default: false
+        status: SUPPORTED
+      service_template_name:
+        type: string
+        description: Service template name
+        required: false
+        status: SUPPORTED
+      ordered_interfaces:
+        type: boolean
+        description: Indicates if service interface are ordered
+        required: false
+        default: false
+        status: SUPPORTED
+      flavor:
+        type: string
+        description: flavor
+        required: false
+        status: SUPPORTED
+      image_name:
+        type: string
+        description: Image name
+        required: true
+        status: SUPPORTED
+      service_type:
+        type: string
+        description: Service type
+        required: true
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - firewall
+          - analyzer
+          - source-nat
+          - loadbalancer
+      service_interface_type_list:
+        type: list
+        description: List of interface types
+        required: true
+        status: SUPPORTED
+        entry_schema:
+          type: string
+          constraints:
+          - valid_values:
+            - management
+            - left
+            - right
+            - other
+      service_instance_name:
+        type: string
+        description: Service instance name
+        required: true
+        status: SUPPORTED
+      interface_list:
+        type: list
+        description: List of interfaces
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+      service_mode:
+        type: string
+        description: Service mode
+        required: true
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - transparent
+          - in-network
+          - in-network-nat
+      shared_ip_list:
+        type: list
+        description: Shared ips enabled
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: boolean
+    attributes:
+      tenant_id:
+        type: string
+        description: Tenant id of the Service Instance
+        status: SUPPORTED
+      fq_name:
+        type: string
+        description: The FQ name of the service instance
+        status: SUPPORTED
+      service_template_name:
+        type: string
+        description: Service Template of the Service Instance
+        status: SUPPORTED
+      show:
+        type: string
+        description: All attributes
+        status: SUPPORTED
+      active_vms:
+        type: string
+        description: Number of service VMs active for this Service Instance
+        status: SUPPORTED
+      service_instance_name:
+        type: string
+        description: The name of the service instance
+        status: SUPPORTED
+      virtual_machines:
+        type: string
+        description: Service VMs for the Service Instance
+        status: SUPPORTED
+      status:
+        type: string
+        description: Status of the service instance
+        status: SUPPORTED        
+
+
+  org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface:
+    derived_from: org.openecomp.resource.cp.nodes.network.Port
+    properties:
+      name:
+        description: Virtual Machine Interface name
+        type: string
+        status: SUPPORTED
+        required: false
+      security_group_refs:
+        description: List of security groups.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      virtual_network_refs:
+        description: List of virtual networks.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      virtual_machine_interface_properties:
+        description: virtual machine interface properties.
+        type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties
+        status: SUPPORTED
+        required: false
+      port_tuple_refs:
+        description: List of port tuples.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      virtual_machine_interface_mac_addresses:
+        description: List of mac addresses.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      virtual_machine_interface_allowed_address_pairs:
+        description: Virtual Machine Interface allowed address pairs.
+        type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs
+        status: SUPPORTED
+        required: false      
+    attributes:
+      fq_name:
+        description: The FQ name of the Virtual Network.
+        type: string
+        status: SUPPORTED
+      show:
+        description: All attributes.
+        type: string
+        status: SUPPORTED
+    capabilities:
+      binding:
+        type: tosca.capabilities.network.Bindable
+        occurrences:
+        - 0
+        - UNBOUNDED
+        valid_source_types:
+        - org.openecomp.resources.cp.nodes.heat.network.contrailV2.VLANSubInterface
+
+  org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules:
+    derived_from: tosca.nodes.Root
+    properties:
+      entries:
+        type: org.openecomp.datatypes.heat.contrail.network.rule.RuleList
+        description: A symbolic name for this contrail network rule
+        required: false
+        status: SUPPORTED
+      name:
+        type: string
+        description: A symbolic name for this contrail network rule
+        required: false
+        status: SUPPORTED
+    attributes:
+      tenant_id:
+        type: string
+        description: tenant_id
+        status: SUPPORTED
+      fq_name:
+        type: string
+        description: fq_name
+        status: SUPPORTED
+      show:
+        type: string
+        description: All attributes.
+        status: SUPPORTED
+      rules:
+        type: list
+        description: List of rules
+        status: SUPPORTED
+        entry_schema:
+          type: string
+    requirements:
+    - network:
+        capability: tosca.capabilities.Attachment
+        node: tosca.nodes.network.Network
+        relationship: org.openecomp.relationships.AttachesTo
+        occurrences:
+        - 0
+        - UNBOUNDED
+
+
+  org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules:
+    derived_from: tosca.nodes.Root
+    properties:
+      description:
+        type: string
+        description: Description of the security group
+        required: false
+        status: SUPPORTED
+      name:
+        type: string
+        description: A symbolic name for this security group, which is not required to be unique.
+        required: false
+        status: SUPPORTED
+      rules:
+        type: list
+        description: List of security group rules
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule
+    attributes:
+      show:
+        type: string
+        description: Detailed information about resource
+        status: SUPPORTED
+    requirements:
+    - port:
+        capability: tosca.capabilities.Attachment
+        node: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+        relationship: org.openecomp.relationships.AttachesTo
+        occurrences:
+        - 0
+        - UNBOUNDED
+  org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork:
+    derived_from: org.openecomp.resource.vl.nodes.network.Network
+    properties:
+      shared:
+        type: string
+        description: Is virtual network shared
+        required: false
+        status: SUPPORTED
+      forwarding_mode:
+        type: string
+        description: forwarding mode of the virtual network
+        required: false
+        status: SUPPORTED
+      external:
+        type: string
+        description: Is virtual network external
+        required: false
+        status: SUPPORTED
+      allow_transit:
+        type: string
+        description: Whether this network should be transitive.
+        required: false
+        status: SUPPORTED
+      flood_unknown_unicast:
+        type: string
+        description: flood L2 packets on network
+        required: false
+        status: SUPPORTED
+      route_targets:
+        type: list
+        description: route targets associated with the virtual network
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      subnets:
+        type: map
+        description: Network related subnets
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.neutron.Subnet
+    attributes:
+      fq_name:
+        type: string
+        description: fq_name
+        status: SUPPORTED
+      show:
+        type: string
+        description: All attributes.
+        status: SUPPORTED
+      subnets_name:
+        type: list
+        description: Subnets name of this network
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      subnets_show:
+        type: map
+        description: Detailed information about each subnet
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      subnets:
+        type: map
+        description: Network related subnets
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.neutron.Subnet
+    capabilities:
+      attachment:
+        type: tosca.capabilities.Attachment
+        occurrences:
+        - 1
+        - UNBOUNDED
+
+  org.openecomp.resource.vfc.nodes.heat.nova.Server:
+    derived_from: org.openecomp.resource.vfc.nodes.Compute
+    properties:
+      admin_pass:
+        type: string
+        description: The administrator password for the server
+        required: false
+        status: SUPPORTED
+      availability_zone:
+        type: string
+        description: Availability zone to create servers in
+        required: false
+        status: SUPPORTED
+      image:
+        type: string
+        description: The ID or name of the image to boot with
+        required: false
+        status: SUPPORTED
+      image_update_policy:
+        type: string
+        description: Policy on how to apply an image-id update
+        required: false
+        default: REBUILD
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - REBUILD_PRESERVE_EPHEMERAL
+          - REPLACE
+          - REBUILD
+      metadata:
+        type: json
+        description: Arbitrary JSON metadata to store for this server
+        required: false
+        status: SUPPORTED
+      contrail_service_instance_ind:
+        type: boolean
+        description: Nova server related to service instance indicator
+        required: false
+        default: false
+        status: SUPPORTED
+      user_data_update_policy:
+        type: string
+        description: Policy on how to apply a user_data update
+        required: false
+        default: REPLACE
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - REPLACE
+          - IGNORE
+      flavor_update_policy:
+        type: string
+        description: Policy on how to apply a flavor update
+        required: false
+        default: RESIZE
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - RESIZE
+          - REPLACE
+      user_data:
+        type: string
+        description: User data script to be executed by cloud-init
+        required: false
+        default: ''
+        status: SUPPORTED
+      flavor:
+        type: string
+        description: The ID or name of the flavor to boot onto
+        required: true
+        status: SUPPORTED
+      key_name:
+        type: string
+        description: Name of keypair to inject into the server
+        required: false
+        status: SUPPORTED
+      reservation_id:
+        type: string
+        description: A UUID for the set of servers being requested
+        required: false
+        status: SUPPORTED
+      security_groups:
+        type: list
+        description: List of security group names or IDs
+        required: false
+        default: [
+          ]
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      config_drive:
+        type: boolean
+        description: enable config drive on the server
+        required: false
+        status: SUPPORTED
+      personality:
+        type: map
+        description: A map of files to create/overwrite on the server upon boot
+        required: false
+        default: {
+          }
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      software_config_transport:
+        type: string
+        description: How the server should receive the metadata required for software configuration
+        required: false
+        default: POLL_SERVER_CFN
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - POLL_SERVER_CFN
+          - POLL_SERVER_HEAT
+          - POLL_TEMP_URL
+          - ZAQAR_MESSAGE
+      user_data_format:
+        type: string
+        description: How the user_data should be formatted for the server
+        required: false
+        default: HEAT_CFNTOOLS
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - SOFTWARE_CONFIG
+          - RAW
+          - HEAT_CFNTOOLS
+      diskConfig:
+        type: string
+        description: Control how the disk is partitioned when the server is created
+        required: false
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - AUTO
+          - MANUAL
+      name:
+        type: string
+        description: Server name
+        required: false
+        status: SUPPORTED
+      scheduler_hints:
+        type: map
+        description: Arbitrary key-value pairs specified by the client to help boot a server
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: string
+    attributes:
+      accessIPv4:
+        type: string
+        description: The manually assigned alternative public IPv4 address of the server
+        status: SUPPORTED
+      addresses:
+        type: map
+        description: A dict of all network addresses with corresponding port_id
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.novaServer.network.AddressInfo
+      accessIPv6:
+        type: string
+        description: The manually assigned alternative public IPv6 address of the server
+        status: SUPPORTED
+      instance_name:
+        type: string
+        description: AWS compatible instance name
+        status: SUPPORTED
+      name:
+        type: string
+        description: Name of the server
+        status: SUPPORTED
+      show:
+        type: string
+        description: Detailed information about resource
+        status: SUPPORTED
+      console_urls:
+        type: string
+        description: URLs of servers consoles
+        status: SUPPORTED
+
+
+  org.openecomp.resource.vfc.rules.nodes.heat.network.contrailV2.NetworkRules:
+    derived_from: tosca.nodes.Root
+    properties:
+      name:
+        type: string
+        description: A symbolic name for this contrail v2 network rule
+        required: false
+        status: SUPPORTED
+      network_policy_entries:
+        type: org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList
+        description: A symbolic name for this contrail v2 network rule
+        required: false
+        status: SUPPORTED
+    attributes:
+      fq_name:
+        type: string
+        description: fq_name
+        status: SUPPORTED
+    requirements:
+    - network:
+        capability: tosca.capabilities.Attachment
+        node: tosca.nodes.network.Network
+        relationship: org.openecomp.relationships.AttachesTo
+        occurrences:
+        - 0
+        - UNBOUNDED
+
+
+  org.openecomp.resource.cp.nodes.heat.network.neutron.Port:
+    derived_from: org.openecomp.resource.cp.nodes.network.Port
+    properties:
+      port_security_enabled:
+        type: boolean
+        description: Flag to enable/disable port security on the network
+        required: false
+        status: SUPPORTED
+      device_id:
+        type: string
+        description: Device ID of this port
+        required: false
+        status: SUPPORTED
+      qos_policy:
+        type: string
+        description: The name or ID of QoS policy to attach to this network
+        required: false
+        status: SUPPORTED
+      allowed_address_pairs:
+        type: list
+        description: Additional MAC/IP address pairs allowed to pass through the port
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.AddressPair
+      binding:vnic_type:
+        type: string
+        description: The vnic type to be bound on the neutron port
+        required: false
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - macvtap
+          - direct
+          - normal
+      value_specs:
+        type: map
+        description: Extra parameters to include in the request
+        required: false
+        default: {
+          }
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      device_owner:
+        type: string
+        description: Name of the network owning the port
+        required: false
+        status: SUPPORTED
+      network:
+        type: string
+        description: Network this port belongs to
+        required: false
+        status: SUPPORTED
+      replacement_policy:
+        type: string
+        description: Policy on how to respond to a stack-update for this resource
+        required: false
+        default: AUTO
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - REPLACE_ALWAYS
+          - AUTO
+      security_groups:
+        type: list
+        description: List of security group names or IDs
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      fixed_ips:
+        type: list
+        description: Desired IPs for this port
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.neutron.port.FixedIps
+      mac_address:
+        type: string
+        description: MAC address to give to this port
+        required: false
+        status: SUPPORTED
+      admin_state_up:
+        type: boolean
+        description: A boolean value specifying the administrative status of the network
+        required: false
+        default: true
+        status: SUPPORTED
+      name:
+        type: string
+        description: A symbolic name for this port
+        required: false
+        status: SUPPORTED
+    attributes:
+      tenant_id:
+        type: string
+        description: Tenant owning the port
+        status: SUPPORTED
+      network_id:
+        type: string
+        description: Unique identifier for the network owning the port
+        status: SUPPORTED
+      qos_policy_id:
+        type: string
+        description: The QoS policy ID attached to this network
+        status: SUPPORTED
+      show:
+        type: string
+        description: Detailed information about resource
+        status: SUPPORTED
+      subnets:
+        type: list
+        description: Subnets of this network
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      status:
+        type: string
+        description: The status of the network
+        status: SUPPORTED
+    capabilities:
+      attachment:
+        type: tosca.capabilities.Attachment
+        occurrences:
+        - 1
+        - UNBOUNDED
+      binding:
+        type: tosca.capabilities.network.Bindable
+        valid_source_types:
+        - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+        occurrences:
+        - 0
+        - UNBOUNDED
+
+  org.openecomp.resource.vl.nodes.heat.network.neutron.Net:
+    derived_from: org.openecomp.resource.vl.nodes.network.Network
+    properties:
+      dhcp_agent_ids:
+        type: list
+        description: The IDs of the DHCP agent to schedule the network
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      tenant_id:
+        type: string
+        description: The ID of the tenant which will own the network
+        required: false
+        status: SUPPORTED
+      port_security_enabled:
+        type: boolean
+        description: Flag to enable/disable port security on the network
+        required: false
+        status: SUPPORTED
+      shared:
+        type: boolean
+        description: Whether this network should be shared across all tenants
+        required: false
+        default: false
+        status: SUPPORTED
+      admin_state_up:
+        type: boolean
+        description: A boolean value specifying the administrative status of the network
+        required: false
+        default: true
+        status: SUPPORTED
+      qos_policy:
+        type: string
+        description: The name or ID of QoS policy to attach to this network
+        required: false
+        status: SUPPORTED
+      subnets:
+        type: map
+        description: Network related subnets
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.neutron.Subnet
+      value_specs:
+        type: map
+        description: Extra parameters to include in the request
+        required: false
+        default: {
+          }
+        status: SUPPORTED
+        entry_schema:
+          type: string
+    attributes:
+      qos_policy_id:
+        type: string
+        description: The QoS policy ID attached to this network
+        status: SUPPORTED
+      show:
+        type: string
+        description: Detailed information about resource
+        status: SUPPORTED
+      subnets_name:
+        type: list
+        description: Subnets name of this network
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      subnets:
+        type: map
+        description: Network related subnets
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.neutron.Subnet
+      mtu:
+        type: scalar-unit.size
+        description: The maximum transmission unit size(in bytes) for the network
+        status: SUPPORTED
+      status:
+        type: string
+        description: The status of the network
+        status: SUPPORTED
+    capabilities:
+      attachment:
+        type: tosca.capabilities.Attachment
+        occurrences:
+        - 1
+        - UNBOUNDED
+
+
+
+  org.openecomp.resource.cp.nodes.heat.network.contrail.Port:
+    derived_from: org.openecomp.resource.cp.nodes.network.Port
+    properties:
+      static_routes:
+        type: list
+        description: An ordered list of static routes to be added to this interface
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.contrail.port.StaticRoute
+      virtual_network:
+        type: string
+        description: Virtual Network for this interface
+        required: true
+        status: SUPPORTED
+      static_route:
+        type: boolean
+        description: Static route enabled
+        required: false
+        default: false
+        status: SUPPORTED
+      allowed_address_pairs:
+        type: list
+        description: List of allowed address pair for this interface
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.contrail.AddressPair
+      shared_ip:
+        type: boolean
+        description: Shared ip enabled
+        required: false
+        default: false
+        status: SUPPORTED
+      ip_address:
+        type: string
+        description: IP for this interface
+        required: false
+        status: SUPPORTED
+      interface_type:
+        type: string
+        description: Interface type
+        required: true
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - management
+          - left
+          - right
+          - other
+    attributes:
+      fq_name:
+        type: string
+        description: fq_name
+        status: SUPPORTED
+
+
+
+  org.openecomp.resource.vfc.nodes.heat.contrail.Compute:
+    derived_from: org.openecomp.resource.vfc.nodes.Compute
+    properties:
+      flavor:
+        type: string
+        description: flavor
+        required: false
+        status: SUPPORTED
+      image_name:
+        type: string
+        description: Image name
+        required: true
+        status: SUPPORTED
+      availability_zone:
+        type: string
+        description: Availability zone to create servers in
+        required: false
+        status: SUPPORTED
+      service_type:
+        type: string
+        description: Service type
+        required: true
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - firewall
+          - analyzer
+          - source-nat
+          - loadbalancer
+      availability_zone_enable:
+        type: boolean
+        description: Indicates availability zone is enabled
+        required: false
+        default: false
+        status: SUPPORTED
+      service_template_name:
+        type: string
+        description: Service template name
+        required: false
+        status: SUPPORTED
+      service_instance_name:
+        type: string
+        description: Service instance name
+        required: true
+        status: SUPPORTED
+      service_mode:
+        type: string
+        description: Service mode
+        required: true
+        status: SUPPORTED
+        constraints:
+        - valid_values:
+          - transparent
+          - in-network
+          - in-network-nat
+    attributes:
+      tenant_id:
+        type: string
+        description: Tenant id of the VM
+        status: SUPPORTED
+      fq_name:
+        type: string
+        description: fq_name
+        status: SUPPORTED
+      show:
+        type: string
+        description: All attributes
+        status: SUPPORTED
+      active_vms:
+        type: string
+        description: Number of active VMs
+        status: SUPPORTED
+      virtual_machines:
+        type: string
+        description: VMs of this compute
+        status: SUPPORTED
+      status:
+        type: string
+        description: status of the compute
+        status: SUPPORTED
+
+
+
+  org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface:
+    derived_from: org.openecomp.resource.cp.nodes.network.SubInterface
+    properties:
+      virtual_machine_interface_refs:
+        description: List of virtual machine interface.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      name:
+        description: Virtual Machine Sub Interface VLAN name
+        type: string
+        status: SUPPORTED
+        required: false
+      virtual_network_refs:
+        description: List of virtual networks.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      virtual_machine_interface_properties:
+        description: virtual machine interface properties.
+        type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties
+        status: SUPPORTED
+        required: false
+      virtual_machine_interface_allowed_address_pairs:
+        description: Virtual Machine Sub Interface allowed address pairs.
+        type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs
+        status: SUPPORTED
+        required: false
+      virtual_machine_interface_mac_addresses:
+        description: List of mac addresses.
+        type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress
+        status: SUPPORTED
+        required: false
+      security_group_refs:
+        description: List of security groups.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      port_tuple_refs:
+        description: List of port tuples.
+        type: list
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+    attributes:
+      fq_name:
+        description: The FQ name of the Virtual Network.
+        type: string
+        status: SUPPORTED
+      show:
+        description: All attributes.
+        type: string
+        status: SUPPORTED
+    requirements:
+    - binding:
+        capability: tosca.capabilities.network.Bindable
+        node: org.openecomp.resource.cp.nodes.network.Port
+        relationship: tosca.relationships.network.BindsTo
+        occurrences:
+        - 1
+        - 1
+
+  org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork:
+    derived_from: org.openecomp.resource.vl.nodes.network.Network
+    properties:
+      network_ipam_refs_data:
+        type: list
+        description: IPAM references Data
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData
+      network_policy_refs_data:
+        type: list
+        description: Policy references data
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData
+      network_ipam_refs:
+        type: list
+        description: IPAM references
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      network_policy_refs:
+        type: list
+        description: Policy references
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      subnets:
+        type: map
+        description: Network related subnets
+        required: false
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.neutron.Subnet
+    attributes:
+      fq_name:
+        type: string
+        description: fq_name
+        status: SUPPORTED
+      subnets_name:
+        type: list
+        description: Subnets name of this network
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      subnets_show:
+        type: map
+        description: Detailed information about each subnet
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      subnets:
+        type: map
+        description: Network related subnets
+        status: SUPPORTED
+        entry_schema:
+          type: org.openecomp.datatypes.heat.network.neutron.Subnet
+    capabilities:
+      attachment:
+        type: tosca.capabilities.Attachment
+        occurrences:
+        - 1
+        - UNBOUNDED
+
+
+
+  org.openecomp.resource.vfc.nodes.heat.cinder.Volume:
+    derived_from: org.openecomp.resource.vfc.nodes.volume
+    properties:
+      availability_zone:
+        description: The availability zone in which the volume will be created
+        type: string
+        status: SUPPORTED
+        required: false
+      image:
+        description: If specified, the name or ID of the image to create the volume from
+        type: string
+        status: SUPPORTED
+        required: false
+      metadata:
+        description: Key/value pairs to associate with the volume
+        type: map
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      volume_type:
+        description: If specified, the type of volume to use, mapping to a specific backend
+        type: string
+        status: SUPPORTED
+        required: false
+      description:
+        description: A description of the volume
+        type: string
+        status: SUPPORTED
+        required: false
+      device_type:
+        description: Device type
+        type: string
+        status: SUPPORTED
+        required: false
+        constraints:
+        - valid_values:
+          - cdrom
+          - disk
+      disk_bus:
+        description: 'Bus of the device: hypervisor driver chooses a suitable default
+          if omitted'
+        type: string
+        status: SUPPORTED
+        required: false
+        constraints:
+        - valid_values:
+          - ide
+          - lame_bus
+          - scsi
+          - usb
+          - virtio
+      backup_id:
+        description: If specified, the backup to create the volume from
+        type: string
+        status: SUPPORTED
+        required: false
+      source_volid:
+        description: If specified, the volume to use as source
+        type: string
+        status: SUPPORTED
+        required: false
+      boot_index:
+        description: Integer used for ordering the boot disks
+        type: integer
+        status: SUPPORTED
+        required: false
+      size:
+        description: The requested storage size (default unit is MB)
+        type: scalar-unit.size
+        status: SUPPORTED
+        required: false
+        constraints:
+        - greater_or_equal: 1 GB
+      read_only:
+        description: Enables or disables read-only access mode of volume
+        type: boolean
+        status: SUPPORTED
+        required: false
+      name:
+        description: A name used to distinguish the volume
+        type: string
+        status: SUPPORTED
+        required: false
+      scheduler_hints:
+        description: Arbitrary key-value pairs specified by the client to help the Cinder scheduler creating a volume
+        type: map
+        status: SUPPORTED
+        entry_schema:
+          type: string
+        required: false
+      swap_size:
+        description: The size of the swap, in MB
+        type: scalar-unit.size
+        status: SUPPORTED
+        required: false
+      delete_on_termination:
+        description: Indicate whether the volume should be deleted when the server is terminated
+        type: boolean
+        status: SUPPORTED
+        required: false
+      multiattach:
+        description: Whether allow the volume to be attached more than once
+        type: boolean
+        status: SUPPORTED
+        required: false
+    attributes:
+      display_description:
+        description: Description of the volume
+        type: string
+        status: SUPPORTED
+      attachments:
+        description: The list of attachments of the volume
+        type: string
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      encrypted:
+        description: Boolean indicating if the volume is encrypted or not
+        type: boolean
+        status: SUPPORTED
+      show:
+        description: Detailed information about resource
+        type: string
+        status: SUPPORTED
+      created_at:
+        description: The timestamp indicating volume creation
+        type: timestamp
+        status: SUPPORTED
+      display_name:
+        description: Name of the volume
+        type: string
+        status: SUPPORTED
+      metadata_values:
+        description: Key/value pairs associated with the volume in raw dict form
+        type: map
+        status: SUPPORTED
+        entry_schema:
+          type: string
+      bootable:
+        description: Boolean indicating if the volume can be booted or not
+        type: boolean
+        status: SUPPORTED
+      status:
+        description: The current status of the volume
+        type: string
+        status: SUPPORTED
+
+
+  org.openecomp.resource.abstract.nodes.VF: 
+    derived_from: tosca.nodes.Root
+    properties:
+      nf_function:
+        type: string       
+      nf_role: 
+        type: string       
+      nf_naming_code:
+        type: string
+      nf_type:
+        type: string 
+      nf_naming:
+        type: org.openecomp.datatypes.Naming
+        Default: true
+      availability_zone_max_count: 
+        type: integer     
+        default: 1 
+        constraints:
+        - valid_values: [0,1,2]
+      min_instances:
+        type: integer 
+      max_instances:
+        type: integer 
+        
+  org.openecomp.resource.abstract.nodes.service: 
+    derived_from: tosca.nodes.Root
+    
+  org.openecomp.resource.vl.nodes.network.Network:
+    derived_from: tosca.nodes.network.Network
+    properties:
+      vendor:
+        type: string
+        required: false
+      vl_name:
+        type: string
+        required: false
+    capabilities:
+      end_point:
+        type: tosca.capabilities.Endpoint
+        
+  
\ No newline at end of file
index cd405e8..25775bb 100644 (file)
@@ -1,7 +1,7 @@
 tosca_definitions_version: tosca_simple_yaml_1_0
 metadata:
-  invariantUUID: cf3ccc9c-b6ea-468e-8eef-f45479978fc1
-  UUID: 76ba485f-50a3-480d-895e-5c319191bc11
+  invariantUUID: 3b111111-1111-1111-1111-111111111111
+  UUID: 4b111111-1111-1111-1111-111111111111
   name: Allotedresource
   description: Allotedresource
   type: VFC
diff --git a/src/test/resources/ymlFiles/resource-SdWanTestVsp-template-interface.yml b/src/test/resources/ymlFiles/resource-SdWanTestVsp-template-interface.yml
new file mode 100644 (file)
index 0000000..5b6d4f4
--- /dev/null
@@ -0,0 +1,656 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+- nodes:
+    file: nodes.yml
+- datatypes:
+    file: data.yml
+- capabilities:
+    file: capabilities.yml
+- relationships:
+    file: relationships.yml
+- groups:
+    file: groups.yml
+- policies:
+    file: policies.yml
+node_types:
+  org.openecomp.resource.vf.SdWanTestVsp:
+    derived_from: org.openecomp.resource.abstract.nodes.VF
+    properties:
+      nf_naming:
+        type: org.openecomp.datatypes.Naming
+      nf_function:
+        type: string
+      nf_naming_code:
+        type: string
+      availability_zone_max_count:
+        type: integer
+        default: 1
+      max_instances:
+        type: integer
+      nf_type:
+        type: string
+      DUMMY_flavor_name:
+        type: string
+        description: flavor name of PCRF PD instance
+      DUMMY_image_name:
+        type: string
+        description: PCRF PD image name
+      DUMMY_Role_net_name:
+        type: string
+        description: DUMMY network name
+      DUMMY_server_name:
+        type: string
+        description: PCRF PD server name
+      nf_role:
+        type: string
+      min_instances:
+        type: integer
+      DUMMY_vnf_id:
+        type: string
+        description: PCRF VNF Id
+    capabilities:
+      abstract_dummy_server.instance_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.write.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.capacity_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.network.outgoing.bytes_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.os_DUMMY_server:
+        type: tosca.capabilities.OperatingSystem
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          distribution:
+            type: string
+            required: false
+          type:
+            type: string
+            required: false
+          version:
+            type: version
+            required: false
+          architecture:
+            type: string
+            required: false
+      abstract_dummy_server.host_DUMMY_server:
+        type: tosca.capabilities.Container
+        occurrences:
+        - 1
+        - UNBOUNDED
+        valid_source_types:
+        - tosca.nodes.SoftwareComponent
+        properties:
+          num_cpus:
+            type: integer
+            required: false
+          disk_size:
+            type: scalar-unit.size
+            required: false
+          cpu_frequency:
+            type: scalar-unit.frequency
+            required: false
+          mem_size:
+            type: scalar-unit.size
+            required: false
+      abstract_dummy_server.memory_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.read.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.feature_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      abstract_dummy_server.disk.device.write.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.ephemeral.size_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.allocation_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.feature:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      abstract_dummy_server.scalable_DUMMY_server:
+        type: tosca.capabilities.Scalable
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          max_instances:
+            type: integer
+            default: 1
+            required: false
+          min_instances:
+            type: integer
+            default: 1
+            required: false
+          default_instances:
+            type: integer
+            required: false
+      abstract_dummy_server.network.incoming.packets.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.binding_DUMMY_server:
+        type: tosca.capabilities.network.Bindable
+        occurrences:
+        - 1
+        - UNBOUNDED
+      abstract_dummy_server.disk.iops_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.network.incoming.bytes_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.read.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.write.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.cpu.delta_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.capacity_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.network.incoming.packets_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.cpu_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.memory.resident_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.read.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.write.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.write.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.endpoint_DUMMY_server:
+        type: tosca.capabilities.Endpoint.Admin
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          secure:
+            type: boolean
+            default: true
+            required: false
+      abstract_dummy_server.memory.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.latency_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.write.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.allocation_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.read.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.read.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.write.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.vcpus_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.write.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.network.outgoing.bytes.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.network.outpoing.packets_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.network.outgoing.packets.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.binding_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.network.Bindable
+        occurrences:
+        - 0
+        - UNBOUNDED
+        valid_source_types:
+        - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+      abstract_dummy_server.cpu_util_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.attachment_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.Attachment
+        occurrences:
+        - 1
+        - UNBOUNDED
+      abstract_dummy_server.disk.device.latency_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.root.size_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.device.iops_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.disk.read.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.feature_DUMMY_server:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      abstract_dummy_server.disk.device.read.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      abstract_dummy_server.network.incoming.bytes.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+    requirements:
+    - abstract_dummy_server.dependency_DUMMY_server:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - abstract_dummy_server.dependency_DUMMY_server_DUMMY_port:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - abstract_dummy_server.dependency:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - abstract_dummy_server.link_DUMMY_server_DUMMY_port:
+        occurrences:
+        - 1
+        - 1
+        capability: tosca.capabilities.network.Linkable
+        relationship: tosca.relationships.network.LinksTo
+    - abstract_dummy_server.local_storage_DUMMY_server:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Attachment
+        node: tosca.nodes.BlockStorage
+        relationship: tosca.relationships.AttachesTo
index 21e64fe..cfef1f0 100644 (file)
@@ -113,7 +113,7 @@ topology_template:
       metadata:
         vfModuleModelName: SdWanTestVsp..DUMMY..module-0
         vfModuleModelInvariantUUID: 6a111111-1111-1111-1111-111111111111
-        vfModuleModelUUID: 7a111111-1111-1111-1111-111111111111
+        vfModuleModelUUID: 5c111111-1111-1111-1111-111111111111
         vfModuleModelVersion: '2'
       properties:
         min_vf_module_instances: 0
diff --git a/src/test/resources/ymlFiles/resource-SdwantestvspNodesDummyServer-template.yml b/src/test/resources/ymlFiles/resource-SdwantestvspNodesDummyServer-template.yml
new file mode 100644 (file)
index 0000000..7575f0a
--- /dev/null
@@ -0,0 +1,651 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+  invariantUUID: aa111111-1111-1111-1111-111111111111
+  UUID: ba111111-1111-1111-1111-111111111111
+  name: SdWanTestVsp.nodes.DUMMY_server
+  description: Not reusable inner VFC
+  type: VFC
+  category: Generic
+  subcategory: Abstract
+  resourceVendor: SCP-Test-VLM
+  resourceVendorRelease: '1.0'
+imports:
+- nodes:
+    file: nodes.yml
+- datatypes:
+    file: data.yml
+- capabilities:
+    file: capabilities.yml
+- relationships:
+    file: relationships.yml
+- groups:
+    file: groups.yml
+- policies:
+    file: policies.yml
+node_types:
+  org.openecomp.resource.vfc.SdWanTestVsp.abstract.nodes.DUMMY_server:
+    derived_from: org.openecomp.resource.abstract.nodes.VFC
+    description: Not reusable inner VFC
+    properties:
+      port_DUMMY_port_network:
+        type: list
+        entry_schema:
+          type: string
+      port_DUMMY_port_network_role_tag:
+        type: list
+        entry_schema:
+          type: string
+      index_value:
+        type: integer
+        default: 0
+        description: Index value of this substitution service template runtime instance
+      compute_DUMMY_server_metadata:
+        type: list
+        entry_schema:
+          type: json
+      port_DUMMY_port_ip_requirements:
+        type: list
+        entry_schema:
+          type: json
+      port_DUMMY_port_mac_requirements:
+        type: list
+        entry_schema:
+          type: json
+      compute_DUMMY_server_name:
+        type: list
+        entry_schema:
+          type: string
+    capabilities:
+      disk.read.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      memory_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      binding_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.network.Bindable
+        occurrences:
+        - 0
+        - UNBOUNDED
+        valid_source_types:
+        - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+      binding_DUMMY_server:
+        type: tosca.capabilities.network.Bindable
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.write.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.latency_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.ephemeral.size_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.write.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      network.incoming.packets.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      network.incoming.packets_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.read.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.read.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      network.outpoing.packets_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.write.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.read.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.read.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.allocation_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      instance_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.write.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.write.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      os_DUMMY_server:
+        type: tosca.capabilities.OperatingSystem
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          distribution:
+            type: string
+            required: false
+          type:
+            type: string
+            required: false
+          version:
+            type: version
+            required: false
+          architecture:
+            type: string
+            required: false
+      network.outgoing.bytes_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      cpu_util_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      attachment_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.Attachment
+        occurrences:
+        - 1
+        - UNBOUNDED
+      disk.device.latency_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.read.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      network.outgoing.bytes.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.iops_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      scalable_DUMMY_server:
+        type: tosca.capabilities.Scalable
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          max_instances:
+            type: integer
+            default: 1
+            required: false
+          min_instances:
+            type: integer
+            default: 1
+            required: false
+          default_instances:
+            type: integer
+            required: false
+      network.incoming.bytes_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      vcpus_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.write.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      network.incoming.bytes.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      cpu.delta_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.root.size_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.write.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      host_DUMMY_server:
+        type: tosca.capabilities.Container
+        occurrences:
+        - 1
+        - UNBOUNDED
+        valid_source_types:
+        - tosca.nodes.SoftwareComponent
+        properties:
+          num_cpus:
+            type: integer
+            required: false
+          disk_size:
+            type: scalar-unit.size
+            required: false
+          cpu_frequency:
+            type: scalar-unit.frequency
+            required: false
+          mem_size:
+            type: scalar-unit.size
+            required: false
+      endpoint_DUMMY_server:
+        type: tosca.capabilities.Endpoint.Admin
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          secure:
+            type: boolean
+            default: true
+            required: false
+      disk.device.iops_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      memory.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.read.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.capacity_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      memory.resident_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.capacity_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      feature_DUMMY_server:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      feature_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      cpu_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.allocation_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      network.outgoing.packets.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      disk.device.write.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+    requirements:
+    - dependency_DUMMY_server:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - dependency_DUMMY_server_DUMMY_port:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - link_DUMMY_server_DUMMY_port:
+        occurrences:
+        - 1
+        - 1
+        capability: tosca.capabilities.network.Linkable
+        relationship: tosca.relationships.network.LinksTo
+    - local_storage_DUMMY_server:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Attachment
+        node: tosca.nodes.BlockStorage
+        relationship: tosca.relationships.AttachesTo
diff --git a/src/test/resources/ymlFiles/resource-TunnelXconntest-template-interface.yml b/src/test/resources/ymlFiles/resource-TunnelXconntest-template-interface.yml
new file mode 100644 (file)
index 0000000..7c211e8
--- /dev/null
@@ -0,0 +1,56 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+- nodes:
+    file: nodes.yml
+- datatypes:
+    file: data.yml
+- capabilities:
+    file: capabilities.yml
+- relationships:
+    file: relationships.yml
+- groups:
+    file: groups.yml
+- policies:
+    file: policies.yml
+node_types:
+  org.openecomp.resource.vf.TunnelXconntest:
+    derived_from: org.openecomp.resource.abstract.nodes.VF
+    properties:
+      nf_naming:
+        type: org.openecomp.datatypes.Naming
+      nf_naming_code:
+        type: string
+      nf_function:
+        type: string
+      availability_zone_max_count:
+        type: integer
+        default: 1
+      nf_role:
+        type: string
+      max_instances:
+        type: integer
+      min_instances:
+        type: integer
+      nf_type:
+        type: string
+    capabilities:
+      allotedresource0.feature:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+    requirements:
+    - allotedresource0.dependency:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - allotedresource0.service_dependency:
+        occurrences:
+        - 1
+        - 1
+        capability: org.openecomp.capabilities.AllottedResource
+        node: tosca.services.Root
+        relationship: tosca.relationships.DependsOn
diff --git a/src/test/resources/ymlFiles/service-SdWanServiceTest-template-interface.yml b/src/test/resources/ymlFiles/service-SdWanServiceTest-template-interface.yml
new file mode 100644 (file)
index 0000000..97997c4
--- /dev/null
@@ -0,0 +1,638 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+- nodes:
+    file: nodes.yml
+- datatypes:
+    file: data.yml
+- capabilities:
+    file: capabilities.yml
+- groups:
+    file: groups.yml
+node_types:
+  org.openecomp.service.SdWanServiceTest:
+    derived_from: org.openecomp.resource.abstract.nodes.service
+    capabilities:
+      sdwantestvsp0.abstract_dummy_server.attachment_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.Attachment
+        occurrences:
+        - 1
+        - UNBOUNDED
+      sdwantestvsp0.abstract_dummy_server.memory.resident_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.instance_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.root.size_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.feature_DUMMY_server:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      sdwantestvsp0.abstract_dummy_server.disk.device.write.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.network.outpoing.packets_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.network.outgoing.packets.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.device.allocation_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.read.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.read.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.device.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.network.outgoing.bytes_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.device.write.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.host_DUMMY_server:
+        type: tosca.capabilities.Container
+        occurrences:
+        - 1
+        - UNBOUNDED
+        valid_source_types:
+        - tosca.nodes.SoftwareComponent
+        properties:
+          num_cpus:
+            type: integer
+            required: false
+          disk_size:
+            type: scalar-unit.size
+            required: false
+          cpu_frequency:
+            type: scalar-unit.frequency
+            required: false
+          mem_size:
+            type: scalar-unit.size
+            required: false
+      sdwantestvsp0.abstract_dummy_server.disk.write.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.binding_DUMMY_server:
+        type: tosca.capabilities.network.Bindable
+        occurrences:
+        - 1
+        - UNBOUNDED
+      sdwantestvsp0.abstract_dummy_server.disk.device.latency_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.write.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.os_DUMMY_server:
+        type: tosca.capabilities.OperatingSystem
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          distribution:
+            type: string
+            required: false
+          type:
+            type: string
+            required: false
+          version:
+            type: version
+            required: false
+          architecture:
+            type: string
+            required: false
+      sdwantestvsp0.abstract_dummy_server.network.incoming.bytes_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.device.read.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.write.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.vcpus_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.ephemeral.size_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      tunnel_xconntest0.allotedresource0.feature:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      sdwantestvsp0.abstract_dummy_server.disk.device.read.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.binding_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.network.Bindable
+        occurrences:
+        - 0
+        - UNBOUNDED
+        valid_source_types:
+        - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+      sdwantestvsp0.abstract_dummy_server.disk.device.read.requests.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.memory.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.feature:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      sdwantestvsp0.abstract_dummy_server.disk.device.write.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.latency_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.memory_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.usage_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.device.write.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.scalable_DUMMY_server:
+        type: tosca.capabilities.Scalable
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          max_instances:
+            type: integer
+            default: 1
+            required: false
+          min_instances:
+            type: integer
+            default: 1
+            required: false
+          default_instances:
+            type: integer
+            required: false
+      sdwantestvsp0.abstract_dummy_server.cpu_util_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.capacity_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.network.incoming.packets_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.cpu.delta_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.iops_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.allocation_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.device.read.bytes_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.cpu_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.network.outgoing.bytes.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.read.requests_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.network.incoming.packets.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.network.incoming.bytes.rate_DUMMY_server_DUMMY_port:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.feature_DUMMY_server_DUMMY_port:
+        type: tosca.capabilities.Node
+        occurrences:
+        - 1
+        - UNBOUNDED
+      sdwantestvsp0.abstract_dummy_server.disk.device.iops_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.device.capacity_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.disk.write.bytes.rate_DUMMY_server:
+        type: org.openecomp.capabilities.metric.Ceilometer
+        description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          name:
+            type: string
+            description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+            required: true
+      sdwantestvsp0.abstract_dummy_server.endpoint_DUMMY_server:
+        type: tosca.capabilities.Endpoint.Admin
+        occurrences:
+        - 1
+        - UNBOUNDED
+        properties:
+          secure:
+            type: boolean
+            default: true
+            required: false
+    requirements:
+    - sdwantestvsp0.abstract_dummy_server.dependency_DUMMY_server:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - sdwantestvsp0.abstract_dummy_server.dependency_DUMMY_server_DUMMY_port:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - sdwantestvsp0.abstract_dummy_server.dependency:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - tunnel_xconntest0.allotedresource0.dependency:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Node
+        node: tosca.nodes.Root
+        relationship: tosca.relationships.DependsOn
+    - tunnel_xconntest0.allotedresource0.service_dependency:
+        occurrences:
+        - 1
+        - 1
+        capability: org.openecomp.capabilities.AllottedResource
+        node: tosca.services.Root
+        relationship: tosca.relationships.DependsOn
+    - sdwantestvsp0.abstract_dummy_server.link_DUMMY_server_DUMMY_port:
+        occurrences:
+        - 1
+        - 1
+        capability: tosca.capabilities.network.Linkable
+        relationship: tosca.relationships.network.LinksTo
+    - sdwantestvsp0.abstract_dummy_server.local_storage_DUMMY_server:
+        occurrences:
+        - 0
+        - UNBOUNDED
+        capability: tosca.capabilities.Attachment
+        node: tosca.nodes.BlockStorage
+        relationship: tosca.relationships.AttachesTo
index 0d3494a..7957fcd 100644 (file)
@@ -10,18 +10,10 @@ metadata:
   ecompGeneratedNaming: true
   namingPolicy: ''
 imports:
-- nodes:
-    file: nodes.yml
 - datatypes:
     file: data.yml
-- capabilities:
-    file: capabilities.yml
-- relationships:
-    file: relationships.yml
 - groups:
     file: groups.yml
-- policies:
-    file: policies.yml
 - service-SD-WAN-Service-Test-interface:
     file: service-SdWanServiceTest-template-interface.yml
 - resource-SD-WAN-Test-VSP: