SOL003 - Implementation of additional test steps for checks against VNFD content in v2.7.1

This merge request refers to the implementation of test steps for checks against VNFD content in SOL003 v2.7.1 APIs.

@lynchpi @aelken @matsuurat @kraja @zulfiqar @zafar

Deadline for review: Thursday January 28th 2021 @6pm CET

Review period elapsed: approved

Edited by Giacomo Bernini

Merge request reports

Loading
+168 −0
Changes for SOL003/VNFLifecycleManagement-API/descriptors/SOL001/VNFD/vnfd_SOL001.yaml: 168 added lines, 0 removed lines.
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:
    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_2_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-2 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
    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"                
 No newline at end of file
+137 −0
Changes for SOL003/VNFLifecycleManagement-API/descriptors/SOL006/VNFD/vnfd_SOL006.yaml: 137 added lines, 0 removed lines.
Original line number Diff line number Diff line
nfv:
  vnfd:
    - id: VNF-B-2vdu
      provider: ETSI TST WG
      product-name: TST010 reference VNF-B with 2 VDUs
      software-version: '2.2'
      version: '2.2'
      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: internal
             layer-protocol: ethernet
             int-virtual-link-desc: internal-vl
          virtual-compute-desc: vdu-b-1-vcd
          virtual-storage-desc: vdu-b-1-vsd
          sw-image-desc: vdu-b-1-image
        - id: vdu-b-2
          name: VNF-B VDU 2
          int-cpd:
           - id: right
             layer-protocol: ethernet
           - id: management
             layer-protocol: ethernet
           - id: internal
             layer-protocol: ethernet
             int-virtual-link-desc: internal-vl
          virtual-compute-desc: vdu-b-2-vcd
          virtual-storage-desc: vdu-b-2-vsd
          sw-image-desc: vdu-b-2-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'
      virtual-compute-desc:
        id: vdu-b-2-vcd
        virtual-memory:
          size: '6.0'
        virtual-cpu:
          num-virtual-cpu: '2'
      virtual-storage-desc:
        id: vdu-b-2-vsd
        type-of-storage: root-storage
        size-of-storage: '0'
      sw-image-desc:
        id: vdu-b-2-image
        name: VNF-B-2 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-2.qcow2'
      int-virtual-link-desc:
        - id: internal-vl
          flavour:
            id: internal-vl-flavour
            qos:
              latency: '1'
              packet-delay-variation: '1'
              packet-loss-ratio: '0.05'
          connectivity-type:
            layer-protocol: ethernet     
      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-2
            cpd: right
          layer-protocol: ethernet
      df:
        id: normal
        vdu-profile:
          - id: vdu-b-1
            min-number-of-instances: '1'
            max-number-of-instances: '2'
          - id: vdu-b-2
            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'
              - vdu-id: vdu-b-2
                number-of-instances: '2'
          - id: single
            vdu-level:
              - vdu-id: vdu-b-1
                number-of-instances: '1'
              - vdu-id: vdu-b-2
                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'
 No newline at end of file
+25 −0
Changes for SOL003/VNFLifecycleManagement-API/environment/variables.txt: 25 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -98,3 +98,28 @@ ${aspectId}
${scaleOutResponse}

${callbackResp}    localhost

${descriptorType}    SOL001
${check_descriptors}	1

${tosca_type_VDU_compute}    tosca.nodes.nfv.Vdu.Compute
${tosca_type_VNF}    tosca.nodes.nfv.VNF
${tosca_type_virtual_link}    tosca.nodes.nfv.VnfVirtualLink
${tosca_type_VDU_cp}    tosca.nodes.nfv.VduCp
${tosca_type_storage}    tosca.nodes.nfv.Vdu.VirtualBlockStorage
 
@{VDU_IDs}
@{VNF_IDs}
@{virtualLink_IDs}
@{CP_IDs}
@{Storage_IDs}
@{internalCP_IDs}
@{externalCP_IDs}
@{InstantiationLevel_IDs}

${Descriptor_ID}
${Provider}
${Product_Name}
${Software_Version}
${Descriptor_Version}
${Flavour_ID}
 No newline at end of file
+5 −2
Changes for SOL003/VNFLifecycleManagement-API/jsons/createVnfRequest.json: 5 added lines, 2 removed lines.
Original line number Diff line number Diff line
{{
  "vnfdId": "{vnfdId}",
  "vnfInstanceName": "string",
  "vnfInstanceDescription": "string",
  "metadata":{{}}
  "vnfdId": "{vnfdId}",
  "vnfProvider":"{vnfProvider}",
  "vnfProductName":"{vnfProductName}",
  "vnfSoftwareVersion":"{vnfSoftwareVersion}",
  "vnfdVersion":"{vnfdVersion}"
}}
 No newline at end of file
+7 −4
Changes for SOL003/VNFLifecycleManagement-API/jsons/patchBodyRequest.json: 7 added lines, 4 removed lines.
Original line number Diff line number Diff line
{
  "vnfInstanceName": "vnf new name",
  "vnfInstanceDescription": "new description"
}
 No newline at end of file
{{
  "vnfInstanceName": "vnf string",
  "vnfInstanceDescription": "string",
  "vnfdId": "{vnfdId}",
  "vnfdVersion":"{vnfdVersion}",
  "metadata":{{}}
}}
 No newline at end of file
Loading
Loading