Loading SOL002/VNFLifecycleManagement-API/VNFInstances.robot +0 −1 Original line number Diff line number Diff line Loading @@ -33,7 +33,6 @@ GET information about multiple VNF instances Check HTTP Response Status Code Is 200 Check HTTP Response Body Json Schema Is vnfInstances GET information about multiple VNF instances Bad Request Invalid attribute-based filtering parameters [Documentation] Test ID: 6.3.5.1.3 ... Test title: GET information about multiple VNF instances Bad Request Invalid attribute-based filtering parameters Loading SOL002/VNFLifecycleManagement-API/VnfLcmOperationKeywords.robot +17 −2 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ Library JSONLibrary Library Collections Library JSONSchemaLibrary schemas/ Library String Variables descriptors/SOL001/vnf-b-1_VNF.yaml *** Keywords *** Loading Loading @@ -79,8 +80,15 @@ POST Create a new vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Set Headers {"Authorization":"${AUTHORIZATION}"} Get key for VNF Descriptor ${descriptor_id}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.descriptor_id} ${provider}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.provider} ${product_name}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.product_name} ${software_version}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.software_version} ${descriptor_version}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.descriptor_version} ${flavour_id}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.flavour_id} ${template} = Get File jsons/createVnfRequest.json ${body}= Format String ${template} vnfdId=${vnfdId} ${body}= Format String ${template} vnfdId=${descriptor_id} vnfProvider=${provider} vnfProductName=${product_name} vnfSoftwareVersion=${software_version} vnfdVersion= ${descriptor_version} flavourId=${flavour_id} Post ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Loading Loading @@ -1016,3 +1024,10 @@ Get VNF LCM Operation occurrences with exclude_fields attribute selector Check HTTP Response Header Contain Link ${linkURL}= Get Value From Json ${response['headers']} $..Link Should Not Be Empty ${linkURL} Get key for VNF Descriptor FOR ${key} IN @{topology_template.node_templates.keys()} Log ${key} ${check1}= Run Keyword And Return Status Should End With ${key} VNF Run Keyword If ${check1} Set Global Variable ${vnfKey} ${key} END SOL002/VNFLifecycleManagement-API/descriptors/SOL001/vnf-b-1_VNF.yaml 0 → 100644 +168 −0 Original line number Diff line number Diff line tosca_definitions_version: tosca_simple_yaml_1_2 description: "TST010 reference VNF-B" metadata: descriptor_id: "VNF-B" vendor: "ETSI TST WG" version: "2.0" topology_template: substitution_mappings: node_type: "tosca.nodes.nfv.VNF" requirements: virtual_link_management: [management, virtual_link_management] virtual_link_left: [left, virtual_link_left] virtual_link_right: [right, virtual_link_right] node_templates: VDU-B-1: type: "tosca.nodes.nfv.Vdu.Compute" properties: name: "vdu-b-1-vcd" descriptor: "Description of VDU-B-1" vdu_profile: min_number_of_instances: 1 max_number_of_instances: 2 capabilities: virtual_compute: properties: virtual_memory: virtual_mem_size: 4096 numa_enabled: false virtual_cpu: num_virtual_cpu: 2 requirements: virtual_storage: - "vdu-b-1-vsd" VDU-B-2: type: "tosca.nodes.nfv.Vdu.Compute" properties: name: "vdu-b-2-vcd" descriptor: "Description of VDU-B-2" vdu_profile: min_number_of_instances: 1 max_number_of_instances: 4 capabilities: virtual_compute: properties: virtual_memory: virtual_mem_size: 6144 numa_enabled: false virtual_cpu: num_virtual_cpu: 2 requirements: virtual_storage: - "vdu-b-2-vsd" right: type: "tosca.nodes.nfv.VduCp" properties: order: 1 requirements: virtual_link_right: virtual_binding: VDU-B-2 management: type: "tosca.nodes.nfv.VduCp" properties: order: 0 requirements: virtual_link_management: virtual_binding: VDU-B-1 left: type: "tosca.nodes.nfv.VduCp" properties: order: 2 requirements: virtual_link_left: virtual_binding: VDU-B-1 internal_vl: type: tosca.nodes.nfv.VnfVirtualLink properties: connectivity_type: layer_protocols: [ ipv4 ] description: Internal Virtual link in the VNF vl_profile: max_bitrate_requirements: root: 100000 leaf: 20000 min_bitrate_requirements: root: 10000 leaf: 10000 internal_vdu_b_1_cp: type: tosca.nodes.nfv.VduCp properties: order: 2 requirements: - virtual_binding: VDU-B-1 - virtual_link: internal_vl internal_vdu_b_2_cp: type: tosca.nodes.nfv.VduCp properties: order: 0 requirements: - virtual_binding: VDU-B-2 - virtual_link: internal_vl vdu-b-1-vsd: type: "tosca.nodes.nfv.Vdu.VirtualBlockStorage" properties: virtual_block_storage_data: size_of_storage: 20 rdma_enabled: false sw_image_data: name: "vdu-b-1 image" version: "1.1" checksum: algorithm: "sha-224" hash: "somehashfortst010" container_format: "bare" disk-format: qcow2 min-disk: '1' min-ram: '2' size: '1' artifacts: sw_image: type: tosca.artifacts.nfv.SwImage file: vdu-b-1.qcow2 vdu-b-1-vsd: type: "tosca.nodes.nfv.Vdu.VirtualBlockStorage" properties: virtual_block_storage_data: size_of_storage: 20 rdma_enabled: false sw_image_data: name: "vdu-b-1 image" version: "1.1" checksum: algorithm: "sha-224" hash: "somehashfortst010" container_format: "bare" disk-format: qcow2 min-disk: '1' min-ram: '2' size: '1' artifacts: sw_image: type: tosca.artifacts.nfv.SwImage file: vdu-b-2.qcow2 vnf_b_1_VNF: type: "tosca.nodes.nfv.VNF" properties: descriptor_id: "VNF-B-2VDUs" descriptor_version: "2.0" provider: "ETSI TST WG" product_name: "VNF-B-2VDUs" software_version: "2.0" product_info_name: "VNF-B-2VDUs" product_info_description: "TST010 reference VNF-B with 2 VDUs" flavour_id: "VNF-B-2VDU_flavor" flavour_description: "VNF-B with 2 VDUs flavor" vnfm_info: etsivnfm: - v2.3.1 interfaces: Vnflcm: scale: implementation: scale-example.yaml terminate: implementation: terminate-example.yaml operate: implementation: operate-example.yaml SOL002/VNFLifecycleManagement-API/descriptors/SOL006/reference_tst010_vnf_b_2df_SOL006.yaml 0 → 100644 +105 −0 Original line number Diff line number Diff line nfv: vnfd: - id: VNF-B-2df provider: ETSI TST WG product-name: TST010 reference VNF-B with 2 DFs software-version: '2.1' version: '2.1' vnfm-info: ETSI VNFM vdu: id: vdu-b-1 name: VNF-B VDU 1 int-cpd: - id: left layer-protocol: ethernet - id: management layer-protocol: ethernet - id: right layer-protocol: ethernet virtual-compute-desc: vdu-b-1-vcd virtual-storage-desc: vdu-b-1-vsd sw-image-desc: vdu-b-1-image virtual-compute-desc: id: vdu-b-1-vcd virtual-memory: size: '4.0' virtual-cpu: num-virtual-cpu: '2' virtual-storage-desc: id: vdu-b-1-vsd type-of-storage: root-storage size-of-storage: '0' sw-image-desc: id: vdu-b-1-image name: VNF-B image version: '1.1' checksum: algorithm: sha-224 hash: somehashfortst010 container-format: bare disk-format: qcow2 min-disk: '1' min-ram: '2.0' size: '1' image: 'http://someurl.com/VNF-B.qcow2' ext-cpd: - id: ext-b-left int-cpd: vdu-id: vdu-b-1 cpd: left layer-protocol: ethernet - id: management int-cpd: vdu-id: vdu-b-1 cpd: management layer-protocol: ethernet - id: ext-b-right int-cpd: vdu-id: vdu-b-1 cpd: right layer-protocol: ethernet df: - id: small vdu-profile: id: vdu-b-1 min-number-of-instances: '1' max-number-of-instances: '2' instantiation-level: - id: double vdu-level: vdu-id: vdu-b-1 number-of-instances: '2' - id: single vdu-level: vdu-id: vdu-b-1 number-of-instances: '1' default-instantiation-level: single lcm-operations-configuration: scale-vnf-to-level-op-config: arbitrary-target-levels-supported: 'true' terminate-vnf-op-config: min-graceful-termination: '1' operate-vnf-op-config: min-graceful-stop-timeout: '1' - id: big vdu-profile: id: vdu-b-1 min-number-of-instances: '1' max-number-of-instances: '4' instantiation-level: - id: double vdu-level: vdu-id: vdu-b-1 number-of-instances: '2' - id: triple vdu-level: vdu-id: vdu-b-1 number-of-instances: '3' default-instantiation-level: double lcm-operations-configuration: scale-vnf-to-level-op-config: arbitrary-target-levels-supported: 'true' terminate-vnf-op-config: min-graceful-termination: '1' operate-vnf-op-config: min-graceful-stop-timeout: '1' SOL002/VNFLifecycleManagement-API/environment/variables.txt +4 −1 Original line number Diff line number Diff line Loading @@ -78,3 +78,6 @@ ${changeStateTo} STOPPED ${vnfdIds} 6fc3539c-e602-4afa-8e13-962fb5a7d81f ${callbackResp} localhost ${descriptorType} SOL001 ${vnfKey} {} No newline at end of file Loading
SOL002/VNFLifecycleManagement-API/VNFInstances.robot +0 −1 Original line number Diff line number Diff line Loading @@ -33,7 +33,6 @@ GET information about multiple VNF instances Check HTTP Response Status Code Is 200 Check HTTP Response Body Json Schema Is vnfInstances GET information about multiple VNF instances Bad Request Invalid attribute-based filtering parameters [Documentation] Test ID: 6.3.5.1.3 ... Test title: GET information about multiple VNF instances Bad Request Invalid attribute-based filtering parameters Loading
SOL002/VNFLifecycleManagement-API/VnfLcmOperationKeywords.robot +17 −2 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ Library JSONLibrary Library Collections Library JSONSchemaLibrary schemas/ Library String Variables descriptors/SOL001/vnf-b-1_VNF.yaml *** Keywords *** Loading Loading @@ -79,8 +80,15 @@ POST Create a new vnfInstance Set Headers {"Accept":"${ACCEPT}"} Set Headers {"Content-Type": "${CONTENT_TYPE}"} Set Headers {"Authorization":"${AUTHORIZATION}"} Get key for VNF Descriptor ${descriptor_id}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.descriptor_id} ${provider}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.provider} ${product_name}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.product_name} ${software_version}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.software_version} ${descriptor_version}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.descriptor_version} ${flavour_id}= Get Variable Value ${topology_template.node_templates.${vnfKey}.properties.flavour_id} ${template} = Get File jsons/createVnfRequest.json ${body}= Format String ${template} vnfdId=${vnfdId} ${body}= Format String ${template} vnfdId=${descriptor_id} vnfProvider=${provider} vnfProductName=${product_name} vnfSoftwareVersion=${software_version} vnfdVersion= ${descriptor_version} flavourId=${flavour_id} Post ${apiRoot}/${apiName}/${apiMajorVersion}/vnf_instances ${body} ${outputResponse}= Output response Set Global Variable ${response} ${outputResponse} Loading Loading @@ -1016,3 +1024,10 @@ Get VNF LCM Operation occurrences with exclude_fields attribute selector Check HTTP Response Header Contain Link ${linkURL}= Get Value From Json ${response['headers']} $..Link Should Not Be Empty ${linkURL} Get key for VNF Descriptor FOR ${key} IN @{topology_template.node_templates.keys()} Log ${key} ${check1}= Run Keyword And Return Status Should End With ${key} VNF Run Keyword If ${check1} Set Global Variable ${vnfKey} ${key} END
SOL002/VNFLifecycleManagement-API/descriptors/SOL001/vnf-b-1_VNF.yaml 0 → 100644 +168 −0 Original line number Diff line number Diff line tosca_definitions_version: tosca_simple_yaml_1_2 description: "TST010 reference VNF-B" metadata: descriptor_id: "VNF-B" vendor: "ETSI TST WG" version: "2.0" topology_template: substitution_mappings: node_type: "tosca.nodes.nfv.VNF" requirements: virtual_link_management: [management, virtual_link_management] virtual_link_left: [left, virtual_link_left] virtual_link_right: [right, virtual_link_right] node_templates: VDU-B-1: type: "tosca.nodes.nfv.Vdu.Compute" properties: name: "vdu-b-1-vcd" descriptor: "Description of VDU-B-1" vdu_profile: min_number_of_instances: 1 max_number_of_instances: 2 capabilities: virtual_compute: properties: virtual_memory: virtual_mem_size: 4096 numa_enabled: false virtual_cpu: num_virtual_cpu: 2 requirements: virtual_storage: - "vdu-b-1-vsd" VDU-B-2: type: "tosca.nodes.nfv.Vdu.Compute" properties: name: "vdu-b-2-vcd" descriptor: "Description of VDU-B-2" vdu_profile: min_number_of_instances: 1 max_number_of_instances: 4 capabilities: virtual_compute: properties: virtual_memory: virtual_mem_size: 6144 numa_enabled: false virtual_cpu: num_virtual_cpu: 2 requirements: virtual_storage: - "vdu-b-2-vsd" right: type: "tosca.nodes.nfv.VduCp" properties: order: 1 requirements: virtual_link_right: virtual_binding: VDU-B-2 management: type: "tosca.nodes.nfv.VduCp" properties: order: 0 requirements: virtual_link_management: virtual_binding: VDU-B-1 left: type: "tosca.nodes.nfv.VduCp" properties: order: 2 requirements: virtual_link_left: virtual_binding: VDU-B-1 internal_vl: type: tosca.nodes.nfv.VnfVirtualLink properties: connectivity_type: layer_protocols: [ ipv4 ] description: Internal Virtual link in the VNF vl_profile: max_bitrate_requirements: root: 100000 leaf: 20000 min_bitrate_requirements: root: 10000 leaf: 10000 internal_vdu_b_1_cp: type: tosca.nodes.nfv.VduCp properties: order: 2 requirements: - virtual_binding: VDU-B-1 - virtual_link: internal_vl internal_vdu_b_2_cp: type: tosca.nodes.nfv.VduCp properties: order: 0 requirements: - virtual_binding: VDU-B-2 - virtual_link: internal_vl vdu-b-1-vsd: type: "tosca.nodes.nfv.Vdu.VirtualBlockStorage" properties: virtual_block_storage_data: size_of_storage: 20 rdma_enabled: false sw_image_data: name: "vdu-b-1 image" version: "1.1" checksum: algorithm: "sha-224" hash: "somehashfortst010" container_format: "bare" disk-format: qcow2 min-disk: '1' min-ram: '2' size: '1' artifacts: sw_image: type: tosca.artifacts.nfv.SwImage file: vdu-b-1.qcow2 vdu-b-1-vsd: type: "tosca.nodes.nfv.Vdu.VirtualBlockStorage" properties: virtual_block_storage_data: size_of_storage: 20 rdma_enabled: false sw_image_data: name: "vdu-b-1 image" version: "1.1" checksum: algorithm: "sha-224" hash: "somehashfortst010" container_format: "bare" disk-format: qcow2 min-disk: '1' min-ram: '2' size: '1' artifacts: sw_image: type: tosca.artifacts.nfv.SwImage file: vdu-b-2.qcow2 vnf_b_1_VNF: type: "tosca.nodes.nfv.VNF" properties: descriptor_id: "VNF-B-2VDUs" descriptor_version: "2.0" provider: "ETSI TST WG" product_name: "VNF-B-2VDUs" software_version: "2.0" product_info_name: "VNF-B-2VDUs" product_info_description: "TST010 reference VNF-B with 2 VDUs" flavour_id: "VNF-B-2VDU_flavor" flavour_description: "VNF-B with 2 VDUs flavor" vnfm_info: etsivnfm: - v2.3.1 interfaces: Vnflcm: scale: implementation: scale-example.yaml terminate: implementation: terminate-example.yaml operate: implementation: operate-example.yaml
SOL002/VNFLifecycleManagement-API/descriptors/SOL006/reference_tst010_vnf_b_2df_SOL006.yaml 0 → 100644 +105 −0 Original line number Diff line number Diff line nfv: vnfd: - id: VNF-B-2df provider: ETSI TST WG product-name: TST010 reference VNF-B with 2 DFs software-version: '2.1' version: '2.1' vnfm-info: ETSI VNFM vdu: id: vdu-b-1 name: VNF-B VDU 1 int-cpd: - id: left layer-protocol: ethernet - id: management layer-protocol: ethernet - id: right layer-protocol: ethernet virtual-compute-desc: vdu-b-1-vcd virtual-storage-desc: vdu-b-1-vsd sw-image-desc: vdu-b-1-image virtual-compute-desc: id: vdu-b-1-vcd virtual-memory: size: '4.0' virtual-cpu: num-virtual-cpu: '2' virtual-storage-desc: id: vdu-b-1-vsd type-of-storage: root-storage size-of-storage: '0' sw-image-desc: id: vdu-b-1-image name: VNF-B image version: '1.1' checksum: algorithm: sha-224 hash: somehashfortst010 container-format: bare disk-format: qcow2 min-disk: '1' min-ram: '2.0' size: '1' image: 'http://someurl.com/VNF-B.qcow2' ext-cpd: - id: ext-b-left int-cpd: vdu-id: vdu-b-1 cpd: left layer-protocol: ethernet - id: management int-cpd: vdu-id: vdu-b-1 cpd: management layer-protocol: ethernet - id: ext-b-right int-cpd: vdu-id: vdu-b-1 cpd: right layer-protocol: ethernet df: - id: small vdu-profile: id: vdu-b-1 min-number-of-instances: '1' max-number-of-instances: '2' instantiation-level: - id: double vdu-level: vdu-id: vdu-b-1 number-of-instances: '2' - id: single vdu-level: vdu-id: vdu-b-1 number-of-instances: '1' default-instantiation-level: single lcm-operations-configuration: scale-vnf-to-level-op-config: arbitrary-target-levels-supported: 'true' terminate-vnf-op-config: min-graceful-termination: '1' operate-vnf-op-config: min-graceful-stop-timeout: '1' - id: big vdu-profile: id: vdu-b-1 min-number-of-instances: '1' max-number-of-instances: '4' instantiation-level: - id: double vdu-level: vdu-id: vdu-b-1 number-of-instances: '2' - id: triple vdu-level: vdu-id: vdu-b-1 number-of-instances: '3' default-instantiation-level: double lcm-operations-configuration: scale-vnf-to-level-op-config: arbitrary-target-levels-supported: 'true' terminate-vnf-op-config: min-graceful-termination: '1' operate-vnf-op-config: min-graceful-stop-timeout: '1'
SOL002/VNFLifecycleManagement-API/environment/variables.txt +4 −1 Original line number Diff line number Diff line Loading @@ -78,3 +78,6 @@ ${changeStateTo} STOPPED ${vnfdIds} 6fc3539c-e602-4afa-8e13-962fb5a7d81f ${callbackResp} localhost ${descriptorType} SOL001 ${vnfKey} {} No newline at end of file