vFW and vDNS support added to azure-plugin
[multicloud/azure.git] / azure / aria / aria-extension-cloudify / src / aria / extensions / aria_extension_tosca / profiles / tosca-simple-nfv-1.0 / data.yaml
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/data.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/data.yaml
new file mode 100644 (file)
index 0000000..889dcf7
--- /dev/null
@@ -0,0 +1,318 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+data_types:
+
+  tosca.datatypes.nfv.L2AddressData:
+    # TBD
+    _extensions:
+      shorthand_name: L2AddressData
+      type_qualified_name: tosca:L2AddressData
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.1
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896055'
+
+  tosca.datatypes.nfv.L3AddressData:
+    _extensions:
+      shorthand_name: L3AddressData
+      type_qualified_name: tosca:L3AddressData
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.2
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896056'
+    description: >-
+      The L3AddressData type is a complex TOSCA data type used to describe L3AddressData information
+      element as defined in [ETSI GS NFV-IFA 011], it provides the information on the IP addresses
+      to be assigned to the connection point instantiated from the parent Connection Point
+      Descriptor.
+    derived_from: tosca.datatypes.Root
+    properties:
+      ip_address_assignment:
+        description: >-
+          Specify if the address assignment is the responsibility of management and orchestration
+          function or not. If it is set to True, it is the management and orchestration function
+          responsibility.
+        type: boolean
+        required: true
+      floating_ip_activated:
+        description: Specify if the floating IP scheme is activated on the Connection Point or not.
+        type: boolean
+        required: true
+      ip_address_type:
+        description: >-
+          Define address type. The address type should be aligned with the address type supported by
+          the layer_protocol properties of the parent VnfExtCpd.
+        type: string
+        required: false
+        constraints:
+          - valid_values: [ ipv4, ipv6 ]
+      number_of_ip_address:
+        description: >-
+          Minimum number of IP addresses to be assigned.
+        type: integer
+        required: false
+
+  tosca.datatypes.nfv.AddressData:
+    _extensions:
+      shorthand_name: AddressData
+      type_qualified_name: tosca:AddressData
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.3
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896057'
+    description: >-
+      The AddressData type is a complex TOSCA data type used to describe AddressData information
+      element as defined in [ETSI GS NFV-IFA 011], it provides information on the addresses to be
+      assigned to the connection point(s) instantiated from a Connection Point Descriptor.
+    derived_from: tosca.datatypes.Root
+    properties:
+      address_type:
+        description: >-
+          Describes the type of the address to be assigned to the connection point instantiated from
+          the parent Connection Point Descriptor. The content type shall be aligned with the address
+          type supported by the layerProtocol property of the parent Connection Point Descriptor.
+        type: string
+        required: true
+        constraints:
+          - valid_values: [ mac_address, ip_address ]
+      l2_address_data:
+        # Shall be present when the addressType is mac_address.
+        description: >-
+          Provides the information on the MAC addresses to be assigned to the connection point(s)
+          instantiated from the parent Connection Point Descriptor.
+        type: tosca.datatypes.nfv.L2AddressData # Empty in "GS NFV IFA011 V0.7.3"
+        required: false
+      l3_address_data:
+        # Shall be present when the addressType is ip_address.
+        description: >-
+          Provides the information on the IP addresses to be assigned to the connection point
+          instantiated from the parent Connection Point Descriptor.
+        type: tosca.datatypes.nfv.L3AddressData
+        required: false
+
+  tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements:
+    _extensions:
+      shorthand_name: VirtualNetworkInterfaceRequirements
+      type_qualified_name: tosca:VirtualNetworkInterfaceRequirements
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.4
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896058'
+    description: >-
+      The VirtualNetworkInterfaceRequirements type is a complex TOSCA data type used to describe
+      VirtualNetworkInterfaceRequirements information element as defined in [ETSI GS NFV-IFA 011],
+      it provides the information to specify requirements on a virtual network interface realising the
+      CPs instantiated from this CPD.
+    derived_from: tosca.datatypes.Root
+    properties:
+      name:
+        description: >-
+          Provides a human readable name for the requirement.
+        type: string
+        required: false
+      description:
+        description: >-
+          Provides a human readable description for the requirement.
+        type: string
+        required: false
+      support_mandatory:
+        description: >-
+          Indicates whether fulfilling the constraint is mandatory (TRUE) for successful operation
+          or desirable (FALSE).
+        type: boolean
+        required: false
+      requirement:
+        description: >-
+          Specifies a requirement such as the support of SR-IOV, a particular data plane
+          acceleration library, an API to be exposed by a NIC, etc.
+        type: string # ARIA NOTE: the spec says "not specified", but TOSCA requires a type
+        required: true
+
+  tosca.datatypes.nfv.ConnectivityType:
+    _extensions:
+      shorthand_name: ConnectivityType
+      type_qualified_name: tosca:ConnectivityType
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.5
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896059'
+    description: >-
+      The TOSCA ConnectivityType type is a complex TOSCA data type used to describe ConnectivityType
+      information element as defined in [ETSI GS NFV-IFA 011].
+    derived_from: tosca.datatypes.Root
+    properties:
+      layer_protocol:
+        description: >-
+          Identifies the protocol this VL gives access to (ethernet, mpls, odu2, ipv4, ipv6,
+          pseudo_wire).
+        type: string
+        required: true
+        constraints:
+          - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
+      flow_pattern:
+        description: >-
+          Identifies the flow pattern of the connectivity (Line, Tree, Mesh).
+        type: string
+        required: false
+
+  tosca.datatypes.nfv.RequestedAdditionalCapability:
+    _extensions:
+      shorthand_name: RequestedAdditionalCapability
+      type_qualified_name: tosca:RequestedAdditionalCapability
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.6
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896060'
+    description: >-
+      RequestAdditionalCapability describes additional capability for a particular VDU.
+    derived_from: tosca.datatypes.Root
+    properties:
+      request_additional_capability_name:
+        description: >-
+          Identifies a requested additional capability for the VDU.
+        type: string
+        required: true
+      support_mandatory:
+        description: >-
+          Indicates whether the requested additional capability is mandatory for successful
+          operation.
+        type: string
+        required: true
+      min_requested_additional_capability_version:
+        description: >-
+          Identifies the minimum version of the requested additional capability.
+        type: string
+        required: false
+      preferred_requested_additional_capability_version:
+        description: >-
+          Identifies the preferred version of the requested additional capability.
+        type: string
+        required: false
+      target_performance_parameters:
+        description: >-
+          Identifies specific attributes, dependent on the requested additional capability type.
+        type: map
+        entry_schema:
+          type: string
+        required: true
+
+  tosca.datatypes.nfv.VirtualMemory:
+    _extensions:
+      shorthand_name: VirtualMemory
+      type_qualified_name: tosca:VirtualMemory
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.7
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896061'
+    description: >-
+      VirtualMemory describes virtual memory for a particular VDU.
+    derived_from: tosca.datatypes.Root
+    properties:
+      virtual_mem_size:
+        description: Amount of virtual memory.
+        type: scalar-unit.size
+        required: true
+      virtual_mem_oversubscription_policy:
+        description: >-
+          The memory core oversubscription policy in terms of virtual memory to physical memory on
+          the platform. The cardinality can be 0 during the allocation request, if no particular
+          value is requested.
+        type: string
+        required: false
+      numa_enabled:
+        description: >-
+          It specifies the memory allocation to be cognisant of the relevant process/core
+          allocation. The cardinality can be 0 during the allocation request, if no particular value
+          is requested.
+        type: boolean
+        required: false
+
+  tosca.datatypes.nfv.VirtualCpu:
+    _extensions:
+      shorthand_name: VirtualCpu
+      type_qualified_name: tosca:VirtualCpu
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.8
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896062'
+    description: >-
+      VirtualMemory describes virtual memory for a particular VDU.
+    derived_from: tosca.datatypes.Root
+    properties:
+      cpu_architecture:
+        description: >-
+          CPU architecture type. Examples are x86, ARM.
+        type: string
+        required: false
+      num_virtual_cpu:
+        description: >-
+          Number of virtual CPUs.
+        type: integer
+        required: true
+      virtual_cpu_clock:
+        description: >-
+          Minimum virtual CPU clock rate.
+        type: scalar-unit.frequency
+        required: false
+      virtual_cpu_oversubscription_policy:
+        description: >-
+          CPU core oversubscription policy.
+        type: string
+        required: false
+      virtual_cpu_pinning:
+        description: >-
+          The virtual CPU pinning configuration for the virtualized compute resource.
+        type: tosca.datatypes.nfv.VirtualCpuPinning
+        required: false
+
+  tosca.datatypes.nfv.VirtualCpuPinning:
+    _extensions:
+      shorthand_name: VirtualCpuPinning
+      type_qualified_name: tosca:VirtualCpuPinning
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.9
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896064'
+    description: >-
+      VirtualCpuPinning describes CPU pinning configuration for a particular CPU.
+    derived_from: tosca.datatypes.Root
+    properties:
+      cpu_pinning_policy:
+        description: >-
+          Indicates the policy for CPU pinning.
+        type: string
+        constraints:
+          - valid_values: [ static, dynamic ]
+        required: false
+      cpu_pinning_map:
+        description: >-
+          If cpuPinningPolicy is defined as "static", the cpuPinningMap provides the map of pinning
+          virtual CPU cores to physical CPU cores/threads.
+        type: map
+        entry_schema:
+          type: string
+        required: false
+
+  tosca.datatypes.nfv.VnfcConfigurableProperties:
+    _extensions:
+      shorthand_name: VnfcconfigurableProperties
+      type_qualified_name: tosca:VnfcconfigurableProperties
+      specification: tosca-simple-nfv-1.0
+      specification_section: 5.3.10
+      specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896065'
+    # ARIA NOTE: description is mangled in spec
+    description: >-
+      VnfcConfigurableProperties describes additional configurable properties of a VNFC.
+    derived_from: tosca.datatypes.Root
+    properties:
+      additional_vnfc_configurable_properties:
+        description: >-
+          Describes additional configuration for VNFC.
+        type: map
+        entry_schema:
+          type: string
+        required: false