From 709de031ede9d9407a4830317b2c6c5f8969025b Mon Sep 17 00:00:00 2001 From: Victor Gao Date: Mon, 4 Jun 2018 16:05:09 +0800 Subject: handle model spec by branches Change-Id: I4ac13c55261be3e347b00c46fc21d721f8c3332b Issue-ID: MODELING-79 Signed-off-by: Victor Gao --- docs/ONAP Model Spec/dm/ArtifactTypes.rst | 9 + docs/ONAP Model Spec/dm/CapabilitiesTypes.rst | 39 +++ docs/ONAP Model Spec/dm/DataTypes.rst | 466 ++++++++++++++++++++++++++ docs/ONAP Model Spec/dm/InterfaceTypes.rst | 65 ++++ docs/ONAP Model Spec/dm/NodeTypes.rst | 263 +++++++++++++++ docs/ONAP Model Spec/dm/RelationshipTypes.rst | 15 + docs/ONAP Model Spec/dm/index.rst | 20 ++ 7 files changed, 877 insertions(+) create mode 100644 docs/ONAP Model Spec/dm/ArtifactTypes.rst create mode 100644 docs/ONAP Model Spec/dm/CapabilitiesTypes.rst create mode 100644 docs/ONAP Model Spec/dm/DataTypes.rst create mode 100644 docs/ONAP Model Spec/dm/InterfaceTypes.rst create mode 100644 docs/ONAP Model Spec/dm/NodeTypes.rst create mode 100644 docs/ONAP Model Spec/dm/RelationshipTypes.rst create mode 100644 docs/ONAP Model Spec/dm/index.rst (limited to 'docs/ONAP Model Spec/dm') diff --git a/docs/ONAP Model Spec/dm/ArtifactTypes.rst b/docs/ONAP Model Spec/dm/ArtifactTypes.rst new file mode 100644 index 0000000..36a9759 --- /dev/null +++ b/docs/ONAP Model Spec/dm/ArtifactTypes.rst @@ -0,0 +1,9 @@ +.. Copyright 2018 (China Mobile) +.. This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +.. Full license text at https://creativecommons.org/licenses/by/4.0/legalcode + +Artifact Types +============== + +| tosca.artifacts.nfv.SwImage: #don't need move to clean version +| derived_from: tosca.artifacts.Deployment.Image \ No newline at end of file diff --git a/docs/ONAP Model Spec/dm/CapabilitiesTypes.rst b/docs/ONAP Model Spec/dm/CapabilitiesTypes.rst new file mode 100644 index 0000000..d8ed14e --- /dev/null +++ b/docs/ONAP Model Spec/dm/CapabilitiesTypes.rst @@ -0,0 +1,39 @@ +.. Copyright 2018 (China Mobile) +.. This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +.. Full license text at https://creativecommons.org/licenses/by/4.0/legalcode + +Capabilities Types +================== + +| **tosca.capabilities.nfv.VirtualBindable:** +| derived_from: tosca.capabilities.root + +| **tosca.capabilities.nfv.VirtualCompute:** +| derived_from: tosca.capabilities.Root +| properties: +| logical_node: +| type: tosca.datatypes.nfv.LogicalNodeData +| required: false +| compute_requirements: +| type: map +| required: false +| requested_additional_capabilities: +| type: map +| entry_schema: +| type: tosca.datatypes.nfv.RequestedAdditionalCapability +| required: false +| virtual_memory: +| type: tosca.datatypes.nfv.VirtualMemory +| required: true +| virtual_cpu: +| type: tosca.datatypes.nfv.VirtualCpu +| required: true + +| **tosca.capabilities.nfv.VirtualLinkable:** +| derived_from: tosca.capabilities.root + +| **tosca.capabilities.nfv.ExtVirtualLinkable:** +| derived_from: tosca.capabilities.root + +| **tosca.capabilities.nfv.VirtualStorage:** +| derived_from: tosca.capabilities.root diff --git a/docs/ONAP Model Spec/dm/DataTypes.rst b/docs/ONAP Model Spec/dm/DataTypes.rst new file mode 100644 index 0000000..3821cf5 --- /dev/null +++ b/docs/ONAP Model Spec/dm/DataTypes.rst @@ -0,0 +1,466 @@ +.. Copyright 2018 (China Mobile) +.. This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +.. Full license text at https://creativecommons.org/licenses/by/4.0/legalcode + +Data Types +========== + +| **tosca.datatypes.nfv.L2AddressData:** +| derived_from: tosca.datatypes.Root +| properties: +| mac_address_assignment: +| type: Boolean +| required: true +| +| +| **tosca.datatypes.nfv.injectFile: #used for vCPE usecase** +| derived_from: tosca.datatypes.Root +| properties: +| source_path: +| type: string +| required: true +| dest_path: +| type:string +| required: true +| +| +| **tosca.datatypes.nfv.L3AddressData:** +| derived_from: tosca.datatypes.Root +| properties: +| ip_address_assignment: +| type: Boolean +| required: true +| floating_ip_activated: +| type: Boolean +| required: true +| ip_address_type: +| type: string +| required: false +| constraints: +| - valid_values: [ipv4, ipv6] +| number_of_ip_address: +| type: integer +| required: false +| fixed_ip_address: #used for vCPE usecase +| type:list +| entry_schema: +| type:string +| required: false +| +| +| **tosca.datatypes.nfv.AddressData:** +| derived_from: tosca.datatypes.Root +| properties: +| address_type: +| type: string +| required: true +| constraints: +| - valid_values: [mac_address, ip_address] +| l2_address_data: +| type: tosca.datatypes.nfv.L2AddressData # empty in "GS NFV IFA011 V0.7.3" +| required: false +| l3_address_data: +| type: tosca.datatypes.nfv.L3AddressData +| required: false +| +| +| **tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements:** +| derived_from: tosca.datatypes.Root +| properties: +| name: +| type: string +| required: false +| description: +| type: string +| required: false +| support_mandatory: +| type: boolean +| required: true +| network_interface_requirements: +| type: Map +| required: true +| nic_io_requirements: +| type: tosca.datatypes.nfv.LogicalNodeData +| required: false +| +| +| **tosca.datatypes.nfv.ConnectivityType:** +| derived_from: tosca.datatypes.Root +| properties: +| layer_protocol: +| type: string +| required: true +| constraints: +| - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ] +| flow_pattern: +| type: string +| required: false +| constraints: # not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| - valid_values: [Line, Tree, Mesh] +| +| +| **tosca.datatypes.nfv.RequestedAdditionalCapability:** +| derived_from: tosca.datatypes.Root +| properties: +| #name: +| # key of containing map +| support_mandatory: +| type: boolean +| required: true +| min_requested_additional_capability_version: +| type: string +| required: false +| preferred_requested_additional_capability_version: +| type: string +| required: false +| requested_additional_capability_name: +| type: string +| required: true +| target_performance_parameters: +| type: map +| entry_schema: +| type: string +| required: true +| +| +| **tosca.datatypes.nfv.VirtualMemory:** +| derived_from: tosca.datatypes.Root +| properties: +| virtual_mem_size: +| type: scalar-unit.size # Number +| required: true +| virtual_mem_oversubscription_policy: +| type: string +| required: false +| vdu_memory_requirements: +| type: map +| required: false +| numa_enabled: +| type: boolean +| required: false +| +| +| **tosca.datatypes.nfv.VirtualCpu:** +| derived_from: tosca.datatypes.Root +| properties: +| cpu_architecture: +| type: string +| required: false +| num_virtual_cpu: +| type: integer +| required: true +| virtual_cpu_clock: +| type: scalar-unit.frequency +| required: false +| virtual_cpu_oversubscription_policy: +| type: string +| required: false +| vdu_cpu_requirements: +| type: map +| required: false +| virtual_cpu_pinning: +| type: tosca.datatypes.nfv.VirtualCpuPinning +| required: false +| +| +| **tosca.datatypes.nfv.VirtualCpuPinning:** +| derived_from: tosca.datatypes.Root +| properties: +| cpu_pinning_policy: +| type: string # CpuPinningPolicy +| constraints: +| - valid_values: [ static, dynamic ] +| required: false +| cpu_pinning_map: +| type: map +| entry_schema: +| type: string +| required: false +| +| +| **tosca.datatypes.nfv.VnfcConfigurableProperties:** +| derived_from: tosca.datatypes.Root +| properties: +| additional_vnfc_configurable_properties: +| type: map +| entry_schema: +| type: string +| required: false +| +| +| **tosca.datatypes.nfv.VduProfile:** +| derived_from: tosca.datatypes.Root +| properties: +| min_number_of_instances: +| type: integer +| required: true +| max_number_of_instances: +| type: integer +| required: true +| #localAffinityOrAntiAffinityRule: # not defined in SOL001 v.6.0 +| # type: tosca.datatypes.nfv.LocalAffinityOrAntiAffinityRule +| # required: true +| #affinityOrAntiAffinityGroupId: # not defined in SOL001 v.6.0 +| # type: string +| # required: true +| watchdog: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: string +| required: true +| vmBootUpTimeOut: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: integer +| required: optional +| +| +| **tosca.datatypes.nfv.VlProfile:** +| derived_from: tosca.datatypes.Root +| properties: +| max_bit_rate_requirements: +| type: tosca.datatypes.nfv.LinkBitRateRequirements +| required: true +| min_bit_rate_requirements: +| type: tosca.datatypes.nfv.LinkBitRateRequirements +| required: true +| qos: +| type: tosca.datatypes.nfv.Qos +| required: false +| initiationParameters: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: map +| entry_schema: +| type: string +| required: false +| cidr: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: String +| required: false +| networkName: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: String +| required: false +| startIp: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: String +| required: false +| endIp: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: String +| required: false +| gatewayIp: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: String +| required: false +| segmentationId: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: Integer +| required: false +| physicalNetwork: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: String +| required: false +| networkType: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: String +| required: false +| constraints: +| - valid_values: [VLAN, VXLAN] +| dhcpEnabled: # not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: Boolean +| required: false +| vlanTransparent: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0 +| type: Boolean +| required: false +| +| +| **tosca.datatypes.nfv.InstantiationLevel:** +| derived_from: tosca.datatypes.Root +| properties: +| description: +| type: string +| required: true +| vdu_levels: +| type: map # key: vduId +| required: true +| entry_schema: +| type: tosca.datatypes.nfv.VduLevel +| scale_info: +| type: map # key: aspectId +| required: false +| entry_schema: +| type: tosca.datatypes.nfv.ScaleInfo +| +| +| **tosca.datatypes.nfv.VduLevel:** +| derived_from: tosca.datatypes.Root +| properties: +| number_of_instances: +| type: integer +| required: true + +| **tosca.datatypes.nfv.VnfLcmOperationsConfiguration:** +| derived_from: tosca.datatypes.Root +| properties: +| instantiate: +| type: tosca.datatypes.nfv.VnfInstantiateOperationConfiguration +| scale: +| type: tosca.datatypes.nfv.VnfScaleOperationConfiguration +| scale_to_level: +| type: tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration +| heal: +| type: tosca.datatypes.nfv.VnfHealOperationConfiguratin +| terminate: +| type: tosca.datatypes.nfv.VnfTerminateOperationConfiguration +| operate: +| type: tosca.datatypes.nfv.VnfOperateOperationConfiguration +| +| +| **tosca.datatypes.nfv.VnfInstantiateOperationConfiguration:** +| derived_from: tosca.datatypes.Root +| properties: +| #parameters: +| #modeled as part of operation parameter list +| +| +| **tosca.datatypes.nfv.VnfScaleOperationConfiguration:** +| derived_from: tosca.datatypes.Root +| properties: +| #parameters: +| #modeled as part of the operation parameter list +| scaling_by_more_than_one_step_supported: +| type: boolean +| +| +| **tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration:** +| derived_from: tosca.datatypes.Root +| properties: +| #parameters: +| #modeled as part of the operation parameter list +| arbitrary_target_levels_supported: +| type: boolean +| +| +| **tosca.datatypes.nfv.VnfHealOperationConfiguration** +| derived_from: tosca.datatypes.Root +| properties: +| #parameters: +| #modeled as part of the operation parameter list +| causes: +| type: list +| entry_schema: +| type: string +| +| +| **tosca.datatypes.nfv.VnfTerminateOperationConfiguration** +| derived_from: tosca.datatypes.Root +| properties: +| min_graceful_termination_timeout: +| type: integer +| max_recommended_graceful_termination_timeout: +| type: integer +| +| +| +| **tosca.datatypes.nfv.VnfOperateOperationConfiguration** +| derived_from: tosca.datatypes.Root +| properties: +| min_graceful_termination_timeout: +| type: integer +| max_recommended_graceful_termination_timeout: +| type: integer +| +| +| **tosca.datatypes.nfv.ScaleInfo** +| derived_from: tosca.datatypes.Root +| properties: +| scaleLevel: +| type: integer +| required: true +| +| +| **tosca.datatypes.nfv.ScaleAspect:** +| derived_from: tosca.datatypes.Root +| properties: +| name: +| type: string +| required: true +| description: +| type: string +| required: true +| associated_group: +| type: string #Identifier +| required: false +| max_scale_level: +| type: integer #PositiveInteger +| required: true +| +| +| **tosca.datatypes.nfv.LinkBitRateRequirements:** +| derived_from: tosca.datatypes.Root +| properties: +| root: +| type: integer +| required: true +| leaf: +| type: integer +| required: true +| +| +| **tosca.datatypes.nfv.Qos:** +| derived_from: tosca.datatypes.Root +| properties: +| latency: +| type: integer #Number [ms] +| required: true +| packet_delay_variation: +| type: integer #Number [ms] +| required: true +| packet_loss_ratio: +| type: Scalar #Number [0 ..1] +| required: false +| +| +| **tosca.datatypes.nfv.CpProtocolData:** +| derived_from: tosca.datatypes.Root +| properties: +| asscociated_layer_protocol: +| type: string +| constraints: +| - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ] +| required: true +| address_data: +| type: tosca.datatypes.nfv.AddressData +| required: false +| +| +| **tosca.datatypes.nfv.VnfConfigurableProperties:** +| derived_from: tosca.datatypes.Root +| properties: +| is_autoscale_enabled: +| type: boolean +| required: false +| is_autoheal_enabled: +| type: boolean +| required: false +| additional_configurable_properties: +| type: tosca.datatypes.nfv.VnfAdditionalConfigurableProperties +| required: false + +| **tosca.datatypes.nfv.VnfAdditionalConfigurableProperties:** +| 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 +| +| +| **tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata:** +| derived_from: tosca.datatypes.Root +| +| +| **tosca.datatypes.nfv.LogicalNodeData:** +| derived_from: tosca.datatypes.Root +| properties: +| logical_node_requirements: +| type: map # not defined in SOL001 v.6.0 +| required: false \ No newline at end of file diff --git a/docs/ONAP Model Spec/dm/InterfaceTypes.rst b/docs/ONAP Model Spec/dm/InterfaceTypes.rst new file mode 100644 index 0000000..f4783a9 --- /dev/null +++ b/docs/ONAP Model Spec/dm/InterfaceTypes.rst @@ -0,0 +1,65 @@ +.. Copyright 2018 (China Mobile) +.. This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +.. Full license text at https://creativecommons.org/licenses/by/4.0/legalcode + +Interface Types +=============== + +| **tosca.interfaces.nfv.vnf.lifecycle.Nfv** +| derived_from: tosca.interfaces.Root +| instantiate: +| description: Invoked upon receipt of an Instantiate VNF request +| instantiate_start: +| description: Invoked before instantiate +| instantiate_end: +| description: Invoked after instantiate +| terminate: +| description: Invoked upon receipt Terminate VNF request +| terminate_start: +| description: Invoked before terminate +| terminate_end: +| description: Invoked after terminate +| modify_information: +| description: Invoked upon receipt of a Modify VNF Information request +| modify_information_start: +| description: Invoked before modify_information +| modify_information_end: +| description: Invoked after modify_information +| change_flavour: +| description: Invoked upon receipt of a Change VNF Flavour request +| change_flavour_start: +| description: Invoked before change_flavour +| change_flavour_end: +| description: Invoked after change_flavour +| change_external_connectivity: +| description: Invoked upon receipt of a Change External VNF Connectivity request +| change_external_connectivity_start: +| description: Invoked before change_external_connectivity +| change_external_connectivity_end: +| description: Invoked after change_external_connectivity +| operate: +| description: Invoked upon receipt of an Operate VNF request +| operate_start: +| description: Invoked before operate +| operate_end: +| description: Invoked after operate +| heal: +| description: Invoked upon receipt of a Heal VNF request +| heal_start: +| description: Invoked before heal +| heal_end: +| description: Invoked after heal +| scale: +| description: Invoked upon receipt of a Scale VNF request +| scale_start: +| description: Invoked before scale +| scale_end: +| description: Invoked after scale +| scale_to_level: +| description: Invoked upon receipt of a Scale VNF to Level request +| scale_to_level_start: +| description: Invoked before scale_to_level +| scale_to_level_end: +| description: Invoked after scale_to_level +| # indicator_changed: +| # description: On receiving a VNF indicator value change notification \ No newline at end of file diff --git a/docs/ONAP Model Spec/dm/NodeTypes.rst b/docs/ONAP Model Spec/dm/NodeTypes.rst new file mode 100644 index 0000000..bdbdce5 --- /dev/null +++ b/docs/ONAP Model Spec/dm/NodeTypes.rst @@ -0,0 +1,263 @@ +.. Copyright 2018 (China Mobile) +.. This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +.. Full license text at https://creativecommons.org/licenses/by/4.0/legalcode + +Node Types +========== + +| **tosca.nodes.nfv.Vdu.Compute:** +| derived_from: tosca.nodes.Root +| properties: +| #id: +| # node name +| name: # align with the IM, please refer to https://wiki.onap.org/display/DW/Design+Time+Model+Clean+Version#DesignTimeModelCleanVersion-Class:VDU/VDUDesc +| type: string +| required: true +| description: +| type: string +| required: true +| boot_order: +| type: map # explicit index (boot index) not necessary, contrary to IFA011. In the IM, it shoul be a array of KeyValuePair/NameValuePair +| entry_schema: +| type: string +| required: false +| nfvi_constraints: +| type: map # Align with IM, it shoul be a array of KeyValuePair/NameValuePair +| entry_schema: +| 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 +| 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 #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 +| user_data: #cloudinit userdata script support +| type: string +| required: false +| #attributes: NOT DEFINED IN ONAP IM and SOL001 +| #private_address: +| # status: deprecated +| #public_address: +| # status: deprecated +| #networks: +| # status: deprecated +| #ports: +| # status: deprecated +| capabilities: +| virtual_compute: +| type: tosca.capabilities.nfv.VirtualCompute +| virtual_binding: +| type: tosca.capabilities.nfv.VirtualBindable +| occurrences: [1, UNBOUND] +| monitoring_parameter: +| type: tosca.capabilities.nfv.Metric # this is not a very clear data structure enough to be coded, suggest to be annotated. +| occurrences: [0,UNBOUND] +| 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 +| +| +| **tosca.nodes.nfv.Vdu.VirtualStorage:** +| derived_from: tosca.nodes.Root +| properties: +| #id: +| # node name +| type_of_storage: +| type: string +| constraints: +| - valid_values: [volume, object, root, block] +| required: true +| size_of_storage: +| type: scalar-unit.size +| required: true +| vdu_storage_requirements: +| type: map +| required: false +| rdma_enabled: +| type: boolean +| required: false +| capabilities: +| virtual_storage: +| type: tosca.capabilities.nfv.VirtualStorage +| artifacts: +| - sw_image: +| file: +| type: tosca.artifacts.Deployment.Image +| #interfaces: # not needed for virtualstroage. it doesn't support cloudinit. +| # cloudinit: +| # type:tosca.interfaces.nfv.vdu.cloudinit +| +| +| **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 ] +| 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 +| allowed_address_data: # Aligned with ONAP R2 Im.not defined in IFA011 v2.4.1 and SOL001 v0.6.0. +| type: tosca.datatypes.nfv.AddressData # In the IM, it is a array, but here it is not a array. TBD. +| required: false +| +| +| **tosca.nodes.nfv.VduCp:** +| derived_from: tosca.nodes.nfv.Cp +| properties: +| bitrate_requirement: +| type: integer +| required:false +| 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 +| constraints: +| - valid_values: [normal, macvtap, direct, baremetal, direct-physical, virtio-forwarder] +| required:false +| virtual_network_interface_requirements: +| type: list +| entry_schema: +| type: VirtualNetworkInterfaceRequirements +| required:false +| # order: #there is no this attribute in IM. +| # type: integer +| # required: false +| # constraints: +| # - greater_or_equal: 0 +| requirements: +| - virtual_link: +| capability: tosca.capabilities.nfv.VirtualLinkable +| relationship: tosca.relationships.nfv.VirtualLinksTo +| node: tosca.nodes.nfv.VnfVirtualLink +| - virtual_binding: +| capability: tosca.capabilities.nfv.VirtualBindable +| relationship: tosca.relationships.nfv.VirtualBindsTo +| node: tosca.nodes.nfv.Vdu.Compute +| +| +| **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: string +| required: false +| vl_profile: +| type: tosca.datatypes.nfv.VlProfile +| required: true +| capabilities: +| monitoring_parameter: # this is not a very clear data structure enough to be coded, suggest to be annotated. +| type: tosca.capabilities.nfv.Metric +| occurrences: [0,UNBOUND] +| 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. Align with the IM, it is 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_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 +| \ No newline at end of file diff --git a/docs/ONAP Model Spec/dm/RelationshipTypes.rst b/docs/ONAP Model Spec/dm/RelationshipTypes.rst new file mode 100644 index 0000000..1c9965b --- /dev/null +++ b/docs/ONAP Model Spec/dm/RelationshipTypes.rst @@ -0,0 +1,15 @@ +.. Copyright 2018 (China Mobile) +.. This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +.. Full license text at https://creativecommons.org/licenses/by/4.0/legalcode + +Relationships Types +=================== + +| **tosca.relationships.nfv.VirtualBindsTo:** +| derived_from: tosca.relationships.DependsOn +| valid_target_types: [ tosca.capabilities.nfv.VirtualBindable] +| +| +| **tosca.relationships.nfv.VirtualLinksTo:** +| derived_from: tosca.relationships.DependsOn +| valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable] diff --git a/docs/ONAP Model Spec/dm/index.rst b/docs/ONAP Model Spec/dm/index.rst new file mode 100644 index 0000000..bc44519 --- /dev/null +++ b/docs/ONAP Model Spec/dm/index.rst @@ -0,0 +1,20 @@ +.. Copyright 2018 (China Mobile) +.. This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +.. Full license text at https://creativecommons.org/licenses/by/4.0/legalcode +.. onap-documentation documentation master file, created by + sphinx-quickstart on Mon Sep 18 15:12:14 2017. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +ONAP Data Model Specifications +============================== + +.. toctree:: + :titlesonly: + + ArtifactTypes + CapabilitiesTypes + DataTypes + InterfaceTypes + NodeTypes + RelationshipTypes -- cgit 1.2.3-korg