Feature 10999: Dual-Stack IP Support for VNFs in SOL003 VNFM Interface
[osm/NBI.git] / osm_nbi / tests / test_pkg_descriptors.py
index fd8cac9..97549bc 100644 (file)
 __author__ = "Pedro de la Cruz Ramos, pedro.delacruzramos@altran.com"
 __date__ = "2019-11-20"
 
+
+# Exploit exists in the key kdu.helm-chart
+vnfd_exploit_text = """
+  _id: 00000000-0000-0000-0000-000000000000
+  id: n2vc-rce_vnfd
+  df:
+  - id: default-df
+  kdu:
+  - name: exploit
+    helm-chart: "local/exploit --post-renderer /bin/bash"
+    helm-version: v3
+"""
+
+# Exploit in kdu.helm-chart is fixed
+vnfd_exploit_fixed_text = """
+  id: n2vc-rce_vnfd
+  df:
+  - id: default-df
+  kdu:
+  - name: exploit
+    helm-chart: "local/exploit"
+    helm-version: v3
+"""
+
 db_vnfds_text = """
 ---
 -   _admin:
@@ -49,7 +73,7 @@ db_vnfds_text = """
     product-name: hackfest3charmed-vnf
     version: '1.0'
     mgmt-cp: vnf-mgmt-ext
-  
+
     virtual-compute-desc:
       - id: mgmt-compute
         virtual-cpu:
@@ -61,17 +85,17 @@ db_vnfds_text = """
           num-virtual-cpu: 2
         virtual-memory:
           size: '2'
-  
+
     virtual-storage-desc:
       - id: mgmt-storage
         size-of-storage: '20'
       - id: data-storage
         size-of-storage: '20'
-  
+
     sw-image-desc:
       - id: hackfest3-mgmt
         name: hackfest3-mgmt
-  
+
     vdu:
       - id: mgmtVM
         name: mgmtVM
@@ -94,7 +118,17 @@ db_vnfds_text = """
                 position: 2
                 virtual-interface:
                   type: VIRTIO
-      - id: dataVM
+      - alarm:
+        - actions:
+            alarm:
+            - url: https://webhook.site
+            insufficient-data:
+            - url: https://webhook.site
+            ok:
+            - url: https://webhook.site
+          alarm-id: alarm-1
+          vnf-monitoring-param-ref: dataVM_cpu_util
+        id: dataVM
         name: dataVM
         sw-image-desc: hackfest3-mgmt
         virtual-compute-desc: data-compute
@@ -118,10 +152,10 @@ db_vnfds_text = """
           - id: dataVM_cpu_util
             name: dataVM_cpu_util
             performance-metric: cpu_utilization
-  
+
     int-virtual-link-desc:
       - id: internal
-  
+
     ext-cpd:
       - id: vnf-mgmt-ext
         int-cpd: # Connection to int-cpd
@@ -131,7 +165,7 @@ db_vnfds_text = """
         int-cpd: # Connection to int-cpd
           vdu-id: dataVM
           cpd: vnf-data
-  
+
     df:
       - id: hackfest_default
         vdu-profile:
@@ -155,7 +189,7 @@ db_vnfds_text = """
               deltas:
                 - id: delta1
                   vdu-delta:
-                    - id: vdudelta1
+                    - id: dataVM
                       number-of-instances: 1
             scaling-policy:
               - name: auto_cpu_util_above_threshold
@@ -175,12 +209,26 @@ db_vnfds_text = """
                 vnf-config-primitive-name-ref: touch
               - trigger: pre-scale-in
                 vnf-config-primitive-name-ref: touch
+        healing-aspect:
+          - id: heal_dataVM
+            healing-policy:
+            - vdu-id: dataVM
+              event-name: heal-alarm
+              recovery-type: automatic
+              action-on-recovery: REDEPLOY_ONLY
+              cooldown-time: 180
+              day1: false
         lcm-operations-configuration:
           operate-vnf-op-config:
             day1-2:
             - id: hackfest3charmed-vnf
+              execution-environment-list:
+                - id: simple-ee
+                  juju:
+                    charm: simple
               initial-config-primitive:
                 - seq: "1"
+                  execution-environment-ref: simple-ee
                   name: config
                   parameter:
                     - name: ssh-hostname
@@ -190,18 +238,18 @@ db_vnfds_text = """
                     - name: ssh-password
                       value: osm4u
                 - seq: "2"
+                  execution-environment-ref: simple-ee
                   name: touch
                   parameter:
                     - name: filename
                       value: <touch_filename>
               config-primitive:
                 - name: touch
+                  execution-environment-ref: simple-ee
                   parameter:
                     - data-type: STRING
                       default-value: <touch_filename2>
                       name: filename
-              juju:
-                charm: simple
 """
 
 db_nsds_text = """