diff options
11 files changed, 362 insertions, 174 deletions
diff --git a/catalog-be/src/main/resources/import/tosca/capability-types/capabilityTypes.yml b/catalog-be/src/main/resources/import/tosca/capability-types/capabilityTypes.yml index b647651990..384b7e1248 100644 --- a/catalog-be/src/main/resources/import/tosca/capability-types/capabilityTypes.yml +++ b/catalog-be/src/main/resources/import/tosca/capability-types/capabilityTypes.yml @@ -233,9 +233,11 @@ tosca.capabilities.nfv.VirtualCompute: logical_node: type: tosca.datatypes.nfv.LogicalNodeData required: false -# compute_requirements: Type is TBD -# type: map -# required: false + compute_requirements: + type: map + entry_schema: + type: string + required: false requested_additional_capabilities: type: map entry_schema: diff --git a/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml b/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml index 169ecb0552..0a8a37bf73 100644 --- a/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml +++ b/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml @@ -1399,6 +1399,7 @@ tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements: required: true requirement: type: string # not specified + required: false network_interface_requirements: type: map entry_schema: @@ -1448,11 +1449,13 @@ tosca.datatypes.nfv.L3AddressData: type: string required: false tosca.datatypes.nfv.AddressData: + derived_from: tosca.datatypes.Root properties: address_type: constraints: - valid_values: [mac_address, ip_address] type: string + required: true l2_address_data: required: false type: tosca.datatypes.nfv.L2AddressData @@ -1556,7 +1559,7 @@ tosca.datatypes.nfv.VduProfile: required: true vmBootUpTimeOut: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 type: integer - required: optional + required: false tosca.datatypes.nfv.LinkBitRateRequirements: derived_from: tosca.datatypes.Root properties: @@ -1577,6 +1580,8 @@ tosca.datatypes.nfv.Qos: required: true packet_loss_ratio: type: float #Number [0 ..1] + constraints: + - in_range: [ 0.0, 1.0 ] required: false tosca.datatypes.nfv.VlProfile: derived_from: tosca.datatypes.Root @@ -1752,16 +1757,24 @@ tosca.datatypes.nfv.VnfConfigurableProperties: # additional_configurable_properties: # type: tosca.datatypes.nfv.VnfAdditionalConfigurableProperties # required: false -#tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions: -# derived_from: tosca.datatypes.Root -#tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata: -# derived_from: tosca.datatypes.Root -#tosca.datatypes.nfv.VnfInfoModifiableAttributes: -# derived_from: tosca.datatypes.Root -# properties: -# extensions: -# type: tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions -# required: false -# metadata: -# type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata -# required: false +tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions: + derived_from: tosca.datatypes.Root + properties: + description: + type: string + required: false +tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata: + derived_from: tosca.datatypes.Root + properties: + description: + type: string + required: false +tosca.datatypes.nfv.VnfInfoModifiableAttributes: + derived_from: tosca.datatypes.Root + properties: + extensions: + type: tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions + required: false + metadata: + type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata + required: false diff --git a/catalog-be/src/main/resources/import/tosca/nfv-types/VNF/VNF.yml b/catalog-be/src/main/resources/import/tosca/nfv-types/VNF/VNF.yml index f0800a8de3..5eeedba2a9 100644 --- a/catalog-be/src/main/resources/import/tosca/nfv-types/VNF/VNF.yml +++ b/catalog-be/src/main/resources/import/tosca/nfv-types/VNF/VNF.yml @@ -40,16 +40,16 @@ node_types: configurable_properties: type: tosca.datatypes.nfv.VnfConfigurableProperties required: false -# modifiable_attributes: -# type: tosca.datatypes.nfv.VnfInfoModifiableAttributes -# required: false # true in IFA011, but all of members are false. Align with the IM, it is false + modifiable_attributes: + type: tosca.datatypes.nfv.VnfInfoModifiableAttributes + required: false # true in IFA011, but all of members are false. Align with the IM, it is false flavour_id: type: string required: true flavour_description: type: string required: true - capabilities: + #capabilities: # monitoring_parameter: # modelled as ad hoc capabilities in the VNF node template requirements: @@ -62,4 +62,4 @@ node_types: - UNBOUNDED interfaces: Nfv: - type: tosca.interfaces.node.lifecycle.Standard + type: tosca.interfaces.nfv.vnf.lifecycle.Nfv diff --git a/catalog-be/src/main/resources/import/tosca/nfv-types/vduCompute/vduCompute.yml b/catalog-be/src/main/resources/import/tosca/nfv-types/vduCompute/vduCompute.yml index 37e4c5edb1..64bf536a0d 100644 --- a/catalog-be/src/main/resources/import/tosca/nfv-types/vduCompute/vduCompute.yml +++ b/catalog-be/src/main/resources/import/tosca/nfv-types/vduCompute/vduCompute.yml @@ -55,11 +55,11 @@ node_types: - virtual_storage: capability: tosca.capabilities.nfv.VirtualStorage relationship: tosca.relationships.nfv.Vdu.AttachedTo - node: tosca.nodes.nfv.VDU.VirtualStorage + node: tosca.nodes.nfv.Vdu.VirtualStorage occurences: - 0 - UNBOUNDED - artifacts: - - sw_image: - file: - type: tosca.artifacts.nfv.SwImage
\ No newline at end of file + #artifacts: artifacts should be defined in template file instead of node type + # - sw_image: + # file: + # type: tosca.artifacts.nfv.SwImage diff --git a/catalog-be/src/main/resources/import/tosca/nfv-types/vduVirtualStorage/vduVirtualStorage.yml b/catalog-be/src/main/resources/import/tosca/nfv-types/vduVirtualStorage/vduVirtualStorage.yml index 12fb306c16..2b3c1dc055 100644 --- a/catalog-be/src/main/resources/import/tosca/nfv-types/vduVirtualStorage/vduVirtualStorage.yml +++ b/catalog-be/src/main/resources/import/tosca/nfv-types/vduVirtualStorage/vduVirtualStorage.yml @@ -24,7 +24,7 @@ node_types: capabilities: virtual_storage: type: tosca.capabilities.nfv.VirtualStorage - artifacts: - - sw_image: - file: - type: tosca.artifacts.Deployment.Image + # artifacts: artifacts should be defined in template file instead of node type + # - sw_image: + # file: + # type: tosca.artifacts.Deployment.Image diff --git a/catalog-be/src/main/resources/import/tosca/relationship-types/relationshipTypes.yml b/catalog-be/src/main/resources/import/tosca/relationship-types/relationshipTypes.yml index 2ed8c0e785..4506fa1b97 100644 --- a/catalog-be/src/main/resources/import/tosca/relationship-types/relationshipTypes.yml +++ b/catalog-be/src/main/resources/import/tosca/relationship-types/relationshipTypes.yml @@ -126,4 +126,8 @@ tosca.relationships.nfv.VirtualBindsTo: tosca.relationships.nfv.VirtualLinksTo: derived_from: tosca.relationships.DependsOn valid_target_types: - - tosca.capabilities.nfv.VirtualLinkable
\ No newline at end of file + - tosca.capabilities.nfv.VirtualLinkable + +tosca.relationships.nfv.Vdu.AttachedTo: + derived_from: tosca.relationships.DependsOn + valid_target_types: [ tosca.capabilities.nfv.VirtualStorage ] diff --git a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/capabilities.yml b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/capabilities.yml index e37169ba04..93382765ad 100644 --- a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/capabilities.yml +++ b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/capabilities.yml @@ -42,9 +42,11 @@ capability_types: logical_node: type: tosca.datatypes.nfv.LogicalNodeData required: false - #compute_requirements: Type is TBD - #type: map - #required: false + compute_requirements: + type: map + entry_schema: + type: string + required: false requested_additional_capabilities: type: map entry_schema: @@ -82,4 +84,5 @@ capability_types: derived_from: tosca.capabilities.Root tosca.capabilities.nfv.ext.LocalAttachment: - derived_from: tosca.capabilities.Root
\ No newline at end of file + derived_from: tosca.capabilities.Root + diff --git a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/data.yml b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/data.yml index 36f2ae3b0f..b5cdaec6bb 100644 --- a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/data.yml +++ b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/data.yml @@ -48,7 +48,7 @@ data_types: derived_from: tosca.datatypes.Root properties: virtual_mem_size: - type: string + type: scalar-unit.size required: true virtual_mem_oversubscription_policy: type: string @@ -106,6 +106,7 @@ data_types: type: string required: false tosca.datatypes.nfv.VnfcConfigurableProperties: + derived_from: tosca.datatypes.Root properties: additional_vnfc_configurable_properties: entry_schema: @@ -162,12 +163,15 @@ data_types: required: true dest_path: type: string + required: true tosca.datatype.nfv.AddressData: + derived_from: tosca.datatypes.Root properties: address_type: constraints: - valid_values: [mac_address, ip_address] type: string + required: true l2_address_data: required: false type: tosca.datatypes.nfv.L2AddressData @@ -181,17 +185,13 @@ data_types: type: boolean required: true tosca.datatypes.nfv.ConnectivityType: + derived_from: tosca.datatypes.Root properties: layer_protocol: constraints: - - valid_values: - - ethernet - - mpls - - odu2 - - ipv4 - - ipv6 - - pseudo_wire + - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ] type: string + required: true flow_pattern: required: false type: string @@ -277,7 +277,7 @@ data_types: required: true vmBootUpTimeOut: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 type: integer - required: optional + required: false tosca.datatypes.nfv.LinkBitRateRequirements: derived_from: tosca.datatypes.Root properties: @@ -298,6 +298,8 @@ data_types: required: true packet_loss_ratio: type: float #Number [0 ..1] + constraints: + - in_range: [ 0.0, 1.0 ] required: false tosca.datatypes.nfv.VlProfile: derived_from: tosca.datatypes.Root @@ -391,9 +393,12 @@ data_types: required: false entry_schema: type: tosca.datatypes.nfv.ScaleInfo - #tosca.datatypes.nfv.VnfInstantiateOperationConfiguration: - # derived_from: tosca.datatypes.Root - #properties: + tosca.datatypes.nfv.VnfInstantiateOperationConfiguration: + derived_from: tosca.datatypes.Root + properties: + description: + type: string + required: false #parameters: #modeled as part of operation parameter list tosca.datatypes.nfv.VnfScaleOperationConfiguration: @@ -436,8 +441,8 @@ data_types: tosca.datatypes.nfv.VnfLcmOperationsConfiguration: derived_from: tosca.datatypes.Root properties: - # instantiate: - # type: tosca.datatypes.nfv.VnfInstantiateOperationConfiguration + instantiate: + type: tosca.datatypes.nfv.VnfInstantiateOperationConfiguration scale: type: tosca.datatypes.nfv.VnfScaleOperationConfiguration scale_to_level: @@ -459,8 +464,12 @@ data_types: address_data: type: tosca.datatypes.nfv.AddressData required: false - #tosca.datatypes.nfv.VnfAdditionalConfigurableProperties: - # derived_from: tosca.datatypes.Root + tosca.datatypes.nfv.VnfAdditionalConfigurableProperties: + derived_from: tosca.datatypes.Root + properties: + description: + type: string + required: false tosca.datatypes.nfv.VnfConfigurableProperties: derived_from: tosca.datatypes.Root properties: @@ -470,19 +479,27 @@ data_types: is_autoheal_enabled: type: boolean required: false - # additional_configurable_properties: - # type: tosca.datatypes.nfv.VnfAdditionalConfigurableProperties - # required: false - #tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions: - # derived_from: tosca.datatypes.Root - #tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata: - # derived_from: tosca.datatypes.Root - #tosca.datatypes.nfv.VnfInfoModifiableAttributes: - # derived_from: tosca.datatypes.Root - # properties: - # extensions: - # type: tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions - # required: false - # metadata: - # type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata - # required: false + additional_configurable_properties: + type: tosca.datatypes.nfv.VnfAdditionalConfigurableProperties + required: false + tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions: + derived_from: tosca.datatypes.Root + properties: + description: + type: string + required: false + tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata: + derived_from: tosca.datatypes.Root + properties: + description: + type: string + required: false + tosca.datatypes.nfv.VnfInfoModifiableAttributes: + derived_from: tosca.datatypes.Root + properties: + extensions: + type: tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions + required: false + metadata: + type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata + required: false diff --git a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/nodes.yml b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/nodes.yml index f6a7c90b3c..369dfb0943 100644 --- a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/nodes.yml +++ b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/nodes.yml @@ -17,7 +17,7 @@ tosca_definitions_version: tosca_simple_yaml_1_1 metadata: filename: onap/nodes.yml version: '1.0' - + imports: - onap_index: file: _index.yml @@ -142,21 +142,21 @@ node_types: type: string required: false configurable_properties: - type: map #In the IM, the multipilicity of VnfcConfigurableProperties is 1, not a map. - entry_schema: - type: tosca.datatypes.nfv.VnfcConfigurableProperties - required: true + type: map #In the IM, the multipilicity of VnfcConfigurableProperties is 1, not a map. + entry_schema: + type: tosca.datatypes.nfv.VnfcConfigurableProperties + required: true vdu_profile: - type: tosca.datatypes.nfv.VduProfile - required: true + type: tosca.datatypes.nfv.VduProfile + required: true inject_files: # Used for vCPE usecase Aligned with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v0.6.0. - type: tosca.datatypes.nfv.injectFile - required: false #Aligned with ONAP R2 IM. it should be false. + type: tosca.datatypes.nfv.injectFile + required: false #Aligned with ONAP R2 IM. it should be false. meta_data: #metadata attached to the VM or container - type: map - entry_schema: - type: string - required: false + type: map + entry_schema: + type: string + required: false user_data: #cloudinit userdata script support type: string required: false @@ -174,17 +174,17 @@ node_types: - 0 - UNBOUNDED requirements: - - virtual_storage: - capability: tosca.capabilities.nfv.VirtualStorage - relationship: tosca.relationships.nfv.Vdu.AttachedTo - node: tosca.nodes.nfv.VDU.VirtualStorage - occurences: - - 0 - - UNBOUNDED - artifacts: - sw_image: - file: - type: tosca.artifacts.nfv.SwImage + - virtual_storage: + capability: tosca.capabilities.nfv.VirtualStorage + relationship: tosca.relationships.nfv.Vdu.AttachedTo + node: tosca.nodes.nfv.Vdu.VirtualStorage + occurences: + - 0 + - UNBOUNDED + #artifacts: artifacts should be defined in template file instead of node type + # sw_image: + # file: + # type: tosca.artifacts.nfv.SwImage tosca.nodes.nfv.Vdu.VirtualStorage: @@ -211,10 +211,10 @@ node_types: capabilities: virtual_storage: type: tosca.capabilities.nfv.VirtualStorage - artifacts: - sw_image: - file: - type: tosca.artifacts.Deployment.Image + #artifacts: artifacts should be defined in template file instead of node type + # sw_image: + # file: + # type: tosca.artifacts.Deployment.Image tosca.nodes.nfv.ext.zte.VNF: capabilities: @@ -361,16 +361,16 @@ node_types: configurable_properties: type: tosca.datatypes.nfv.VnfConfigurableProperties required: false - # modifiable_attributes: - # type: tosca.datatypes.nfv.VnfInfoModifiableAttributes - # required: false # true in IFA011, but all of members are false. Align with the IM, it is false + modifiable_attributes: + type: tosca.datatypes.nfv.VnfInfoModifiableAttributes + required: false # true in IFA011, but all of members are false. Align with the IM, it is false flavour_id: type: string required: true flavour_description: type: string required: true - capabilities: + #capabilities: # monitoring_parameter: # modelled as ad hoc capabilities in the VNF node template requirements: @@ -383,7 +383,7 @@ node_types: - UNBOUNDED interfaces: Nfv: - type: tosca.interfaces.node.lifecycle.Standard + type: tosca.interfaces.nfv.vnf.lifecycle.Nfv tosca.nodes.nfv.VduCp: derived_from: tosca.nodes.nfv.Cp diff --git a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/relationships.yml b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/relationships.yml index cad5e96e6c..ca74e8432e 100644 --- a/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/relationships.yml +++ b/common/onap-tosca-datatype/src/main/resources/globalTypes/onap/relationships.yml @@ -23,14 +23,6 @@ imports: file: _index.yml relationship_types: - - tosca.relationships.nfv.VDU.AttachedTo: - derived_from: tosca.relationships.Root - properties: - location: - required: false - type: string - tosca.relationships.nfv.VirtualBindsTo: derived_from: tosca.relationships.DependsOn valid_target_types: @@ -39,4 +31,8 @@ relationship_types: tosca.relationships.nfv.VirtualLinksTo: derived_from: tosca.relationships.DependsOn valid_target_types: - - tosca.capabilities.nfv.VirtualLinkable
\ No newline at end of file + - tosca.capabilities.nfv.VirtualLinkable + + tosca.relationships.nfv.Vdu.AttachedTo: + derived_from: tosca.relationships.DependsOn + valid_target_types: [ tosca.capabilities.nfv.VirtualStorage ] diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml index dad7feb604..7c5c453afa 100644 --- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml +++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml @@ -1005,41 +1005,59 @@ node_types: - 0 - UNBOUNDED - tosca.nodes.nfv.VDU.Compute: - attributes: - private_address: - type: string - public_address: - type: string - networks: - type: string - ports: - type: string + tosca.nodes.nfv.Vdu.Compute: + #attributes: + # private_address: + # type: string + # public_address: + # type: string + # networks: + # type: string + # ports: + # type: string capabilities: - scalable: - type: tosca.capabilities.Scalable + #scalable: + # type: tosca.capabilities.Scalable virtual_compute: type: tosca.capabilities.nfv.VirtualCompute - endpoint: - type: tosca.capabilities.Endpoint.Admin - os: - type: tosca.capabilities.OperatingSystem + #endpoint: + # type: tosca.capabilities.Endpoint.Admin + #os: + # type: tosca.capabilities.OperatingSystem virtual_binding: type: tosca.capabilities.nfv.VirtualBindable - host: - type: tosca.capabilities.Container - binding: - type: tosca.capabilities.network.Bindable + occurrences: [1, UNBOUNDED] + #host: + # type: tosca.capabilities.Container + #binding: + # type: tosca.capabilities.network.Bindable monitoring_parameter: type: tosca.capabilities.nfv.Metric + occurrences: [0, UNBOUNDED] derived_from: tosca.nodes.Root properties: + vdu_profile: + type: tosca.datatypes.nfv.VduProfile + required: true + inject_files: # Used for vCPE usecase Aligned with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v0.6.0. + type: tosca.datatypes.nfv.injectFile + required: false + meta_data: #metadata attached to the VM or container + type: map + entry_schema: + type: string + required: false + user_data: #cloudinit userdata script support + type: string + required: false configurable_properties: entry_schema: type: tosca.datatypes.nfv.VnfcConfigurableProperties type: map + required: true name: type: string + required: true nfvi_constraints: entry_schema: type: string @@ -1047,38 +1065,78 @@ node_types: type: list descrption: type: string + required: true boot_order: entry_schema: type: string required: false type: list requirements: - - local_storage: - capability: tosca.capabilities.Attachment - occurrences: - - 0 - - UNBOUNDED - - virtual_storage: - capability: tosca.capabilities.nfv.VirtualStorage - occurrences: - - 0 - - UNBOUNDED + #- local_storage: + # capability: tosca.capabilities.Attachment + # occurrences: + # - 0 + # - UNBOUNDED + - virtual_storage: + capability: tosca.capabilities.nfv.VirtualStorage + relationship: tosca.relationships.nfv.Vdu.AttachedTo + node: tosca.nodes.nfv.VDU.VirtualStorage + occurences: [ 0, UNBOUNDED ] - tosca.nodes.nfv.VDU.VirtualStorage: + tosca.nodes.nfv.Vdu.VirtualStorage: capabilities: virtual_storage: type: tosca.capabilities.nfv.VirtualStorage derived_from: tosca.nodes.Root properties: - id: - type: string + #id: + # type: string size_of_storage: - type: string + type: scalar-unit.size + required: true + vdu_storage_requirements: + type: map + entry_schema: + type: string + required: false rdma_enabled: required: false type: boolean type_of_storage: type: string + constraints: + - valid_values: [volume, object, root, block] + required: true + + tosca.nodes.nfv.Cp: + derived_from: tosca.nodes.Root + properties: + layer_protocol: + type: list + entry_schema: + constraints: + - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ] + type: string + required: true + role: #Name in ETSI NFV IFA011 v0.7.3 cpRole + type: string + constraints: + - valid_values: [ root, leaf ] + required: false + description: + type: string + required: false + protocol_data: + type: list + entry_schema: + type: tosca.datatypes.nfv.CpProtocolData + required: true + trunk_mode: + type: boolean + required: true + allowedAddressData: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0 + type: tosca.datatypes.nfv.AddressData + required: false tosca.nodes.nfv.VduCpd: derived_from: tosca.nodes.Root @@ -1088,45 +1146,140 @@ node_types: type: tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements required: false type: list - role: - constraints: - - valid_values: - - root - - leaf - required: false - type: string + #role: + # constraints: + # - valid_values: + # - root + # - leaf + # required: false + # type: string bitrate_requirement: required: false type: integer - description: + #description: + # required: false + # type: string + #layer_protocol: + # constraints: + # - valid_values: + # - ethernet + # - mpls + # - odu2 + # - ipv4 + # - ipv6 + # - pseudo_wire + # type: string + #address_data: + # entry_schema: + # type: tosca.datatype.nfv.AddressData + # required: false + # type: list + vnic_name: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0 + type: string + required: false + vnic_order: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0 + type: integer required: false + vnic_type: # Aligned with ONAP R2 Im. not defined in IFA011 v2.4.1 and SOL001 v0.6.0 type: string - layer_protocol: constraints: - - valid_values: - - ethernet - - mpls - - odu2 - - ipv4 - - ipv6 - - pseudo_wire - type: string - address_data: + - valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder] + required: false + requirements: + - virtual_binding: + capability: tosca.capabilities.nfv.VirtualBindable + relationship: tosca.relationships.nfv.VirtualBindsTo + node: tosca.nodes.nfv.Vdu.Compute + - virtual_link: + capability: tosca.capabilities.nfv.VirtualLinkable + relationship: tosca.relationships.nfv.VirtualLinksTo + node: tosca.nodes.nfv.VnfVirtualLink + + tosca.nodes.nfv.VnfVirtualLink: + derived_from: tosca.nodes.Root + properties: + connectivity_type: + type: tosca.datatypes.nfv.ConnectivityType + required: true + description: + type: string + required: false + test_access: + type: list entry_schema: - type: tosca.datatype.nfv.AddressData + type: string + required: false + vl_profile: + type: tosca.datatypes.nfv.VlProfile + required: true + capabilities: + monitoring_parameter: + type: tosca.capabilities.nfv.Metric + occurrences: [0, UNBOUNDED] + virtual_linkable: + type: tosca.capabilities.nfv.VirtualLinkable + + tosca.nodes.nfv.VNF: + derived_from: tosca.nodes.Root + properties: + descriptor_id: # instead of vnfd_id + type: string # GUID + required: true + descriptor_version: # instead of vnfd_version + type: string + required: true + provider: # instead of vnf_provider + type: string + required: true + product_name: # instead of vnf_product_name + type: string + required: true + software_version: # instead of vnf_software_version + type: string + required: true + product_info_name: # instead of vnf_product_info_name + type: string + required: false + product_info_description: # instead of vnf_product_info_description + type: string required: false + vnfm_info: type: list + entry_schema: + type: string + required: true + localization_languages: + type: list + entry_schema: + type: string + required: false + default_localization_language: + type: string + required: false + configurable_properties: + type: tosca.datatypes.nfv.VnfConfigurableProperties + required: false + modifiable_attributes: + type: tosca.datatypes.nfv.VnfInfoModifiableAttributes + required: false # true in IFA011, but all of members are false + flavour_id: + type: string + required: true + flavour_description: + type: string + required: true + #capabilities: + # monitoring_parameter: + # modelled as ad hoc capabilities in the VNF node template requirements: - - virtual_binding: - capability: tosca.capabilities.nfv.VirtualBindable - occurrences: - - 0 - - UNBOUNDED - - virtual_link: - capability: tosca.capabilities.nfv.VirtualBindable - occurrences: - - 0 - - UNBOUNDED + - virtual_link: + capability: tosca.capabilities.nfv.VirtualLinkable + relationship: tosca.relationships.nfv.VirtualLinksTo + node: tosca.nodes.nfv.VnfVirtualLink + occurrences: [ 0, UNBOUNDED ] + interfaces: + Nfv: + type: tosca.interfaces.nfv.vnf.lifecycle.Nfv tosca.nodes.nfv.ext.ImageFile: capabilities: guest_os: @@ -1463,4 +1616,4 @@ node_types: required: false type: list connectivity_type: - type: tosca.datatypes.nfv.ConnectivityType
\ No newline at end of file + type: tosca.datatypes.nfv.ConnectivityType |