Move CSIT to integration/csit repo
[integration/csit.git] / tests / optf-has / has / data / plan_with_hpa_score_multi_objective.json
diff --git a/tests/optf-has/has/data/plan_with_hpa_score_multi_objective.json b/tests/optf-has/has/data/plan_with_hpa_score_multi_objective.json
new file mode 100644 (file)
index 0000000..4a6d3bc
--- /dev/null
@@ -0,0 +1,267 @@
+{
+  "name": "vCPE-HPA-Requirement-Optional",
+  "template": {
+    "homing_template_version": "2017-10-10",
+    "parameters": {
+      "service_name": "Residential vCPE",
+      "service_id": "vcpe_service_id",
+      "customer_lat": 45.395968,
+      "customer_long": -71.135344,
+      "REQUIRED_MEM": 4,
+      "REQUIRED_DISK": 100,
+      "pnf_id": "some_pnf_id"
+    },
+    "locations": {
+      "customer_loc": {
+        "latitude": {
+          "get_param": "customer_lat"
+        },
+        "longitude": {
+          "get_param": "customer_long"
+        }
+      }
+    },
+    "demands": {
+      "vG": [
+        {
+          "inventory_provider": "aai",
+          "inventory_type": "cloud"
+        }
+      ]
+    },
+    "constraints": {
+      "constraint_vg_customer": {
+        "type": "distance_to_location",
+        "demands": [
+          "vG"
+        ],
+        "properties": {
+          "distance": "< 100 km",
+          "location": "customer_loc"
+        }
+      },
+      "hpa_constraint": {
+        "type": "hpa",
+        "demands": [
+          "vG"
+        ],
+        "properties": {
+          "evaluate": [
+            {
+              "id":"vg_1",
+              "type":"vnfc",
+              "directives":[
+                {
+                  "type":"flavor_directives",
+                  "attributes":[
+                    {
+                      "attribute_name":"flavor_label_1",
+                      "attribute_value":""
+                    }
+                  ]
+                }
+              ],
+              "flavorProperties": [
+                {
+                  "hpa-feature": "basicCapabilities",
+                  "hpa-version": "v1",
+                  "architecture": "generic",
+                  "mandatory": "True",
+                  "directives":[],
+                  "hpa-feature-attributes": [
+                    {
+                      "hpa-attribute-key": "numVirtualCpu",
+                      "hpa-attribute-value": "4",
+                      "operator": ">="
+                    },
+                    {
+                      "hpa-attribute-key": "virtualMemSize",
+                      "hpa-attribute-value": "8",
+                      "operator": ">=",
+                      "unit": "GB"
+                    }
+                  ]
+                },
+                {
+                  "hpa-feature": "instructionSetExtensions",
+                  "hpa-version": "v1",
+                  "architecture": "Intel64",
+                  "mandatory": "True",
+                  "directives":[],
+                  "hpa-feature-attributes": [
+                    {
+                      "hpa-attribute-key": "instructionSetExtensions",
+                      "hpa-attribute-value": [
+                        "aes",
+                        "sse",
+                        "avx",
+                        "smt"
+                      ],
+                      "operator": "ALL",
+                      "unit": ""
+                    }
+                  ]
+                },
+                {
+                  "hpa-feature": "numa",
+                  "hpa-version": "v1",
+                  "architecture": "generic",
+                  "mandatory": "False",
+                  "score": "3",
+                  "directives":[],
+                  "hpa-feature-attributes": [
+                    {
+                      "hpa-attribute-key": "numaNodes",
+                      "hpa-attribute-value": "2",
+                      "operator": "="
+                    },
+                    {
+                      "hpa-attribute-key": "numaCpu-0",
+                      "hpa-attribute-value": "2",
+                      "operator": "="
+                    },
+                    {
+                      "hpa-attribute-key": "numaCpu-1",
+                      "hpa-attribute-value": "4",
+                      "operator": "="
+                    },
+                    {
+                      "hpa-attribute-key": "numaMem-0",
+                      "hpa-attribute-value": "2",
+                      "operator": "=",
+                      "unit": "GB"
+                    },
+                    {
+                      "hpa-attribute-key": "numaMem-1",
+                      "hpa-attribute-value": "4",
+                      "operator": "=",
+                      "unit": "GB"
+                    }
+                  ]
+                }
+              ]
+            },
+            {
+              "id":"vg_2",
+              "type":"vnfc",
+              "directives":[
+                {
+                  "type":"flavor_directives",
+                  "attributes":[
+                    {
+                      "attribute_name":"flavor_label_2",
+                      "attribute_value":""
+                    }
+                  ]
+                }
+              ],
+              "flavorProperties": [
+                {
+                  "hpa-feature": "basicCapabilities",
+                  "hpa-version": "v1",
+                  "architecture": "generic",
+                  "mandatory": "True",
+                  "directives":[],
+                  "hpa-feature-attributes": [
+                    {
+                      "hpa-attribute-key": "numVirtualCpu",
+                      "hpa-attribute-value": "4",
+                      "operator": ">="
+                    },
+                    {
+                      "hpa-attribute-key": "virtualMemSize",
+                      "hpa-attribute-value": "8",
+                      "operator": ">=",
+                      "unit": "GB"
+                    }
+                  ]
+                },
+                {
+                  "hpa-feature": "ovsDpdk",
+                  "hpa-version": "v1",
+                  "architecture": "generic",
+                  "mandatory": "False",
+                  "score": "5",
+                  "directives":[],
+                  "hpa-feature-attributes": [
+                    {
+                      "hpa-attribute-key": "dataProcessingAccelerationLibrary",
+                      "hpa-attribute-value": "v18.02",
+                      "operator": "="
+                    }
+                  ]
+                },
+                {
+                  "hpa-feature": "numa",
+                  "hpa-version": "v1",
+                  "architecture": "generic",
+                  "mandatory": "False",
+                  "score": "3",
+                  "directives":[],
+                  "hpa-feature-attributes": [
+                    {
+                      "hpa-attribute-key": "numaNodes",
+                      "hpa-attribute-value": "2",
+                      "operator": "="
+                    },
+                    {
+                      "hpa-attribute-key": "numaCpu-0",
+                      "hpa-attribute-value": "2",
+                      "operator": "="
+                    },
+                    {
+                      "hpa-attribute-key": "numaCpu-1",
+                      "hpa-attribute-value": "4",
+                      "operator": "="
+                    },
+                    {
+                      "hpa-attribute-key": "numaMem-0",
+                      "hpa-attribute-value": "2",
+                      "operator": "=",
+                      "unit": "GB"
+                    },
+                    {
+                      "hpa-attribute-key": "numaMem-1",
+                      "hpa-attribute-value": "4",
+                      "operator": "=",
+                      "unit": "GB"
+                    }
+                  ]
+                }
+              ]
+            }
+          ]
+        }
+      }
+    },
+    "optimization": {
+      "minimize": {
+        "sum": [
+          {
+            "product": [
+              100,
+              {
+                "distance_between": [
+                  "customer_loc",
+                  "vG"
+                ]
+              }
+            ]
+          },
+          {
+            "product": [
+              200,
+              {
+                "hpa_score": [
+                  "vG"
+                ]
+              }
+            ]
+          }
+        ]
+      }
+    }
+  },
+  "timeout": 5,
+  "limit": 3
+}