Add sample policies in OSDF repo
[optf/osdf.git] / examples / policies / nsi_policies / vnf_nsi_shared.json
diff --git a/examples/policies/nsi_policies/vnf_nsi_shared.json b/examples/policies/nsi_policies/vnf_nsi_shared.json
new file mode 100644 (file)
index 0000000..cce2f73
--- /dev/null
@@ -0,0 +1,105 @@
+{
+   "vnfPolicy_{{ service_name }}":{
+      "metadata":{
+         "policy-id":"vnfPolicy_{{ service_name }}",
+         "policy-version":1
+      },
+      "properties":{
+         "identity":"vnf_{{ service_name }}",
+         "resources":["{{ service_name }}"],
+        "scope":[
+            "shared,reuse",
+            "shared,create_new"
+         ],
+         "services":[
+            "{{ service_name }}"
+         ],
+         "geography":[],
+         "vnfProperties":[
+            {
+               "attributes":{
+                  "modelInvariantId":{"get_param": "model_invariant_id"},
+                  "modelVersionId":{"get_param": "model_version_id"},
+                  "service-role":"nsi"
+               },
+               "inventoryProvider":"aai",
+               "inventoryType":"nsi",
+               "unique":"true",
+               "defaultAttributes":{
+                  "creation_cost" : 0.1
+               }
+            },
+            {
+               "attributes":{
+                  "service_profile": {
+                     "latency": {"value": {"get_param": "latency"}, "operator": "lte"},
+                     "s_nssai": {"value": {"get_param": "s_nssai"}, "operator": "eq"},
+                                        "resource_sharing_level": {"value": {"get_param": "resource_sharing_level"}, "operator": "eq"},
+                                        "ue_mobility_level": {"value": {"get_param": "ue_mobility_level"}, "operator": "eq"},
+                     "sst": {"value": {"get_param": "sst"}, "operator": "eq"},
+                     "max_number_of_ues": {"value": {"get_param": "max_number_of_ues"}, "operator": "eq"}
+                  },
+                  "subnets": {
+                  "CN":{
+                     "latency":{
+                        "max":{"get_param":"latency"},
+                        "min":{"get_param":"CN_latency"},
+                        "steps":5
+                     },
+                     "s_nssai":{
+                        "values":[
+                           {"get_param": "s_nssai"}
+                        ]
+                     },
+                                        "sst": {"values":[{"get_param": "sst"}]},
+                                        "resource_sharing_level": {"values":[{"get_param": "resource_sharing_level"}]},
+                                        "plmn_id_list": {"values":["39-00"]},
+                                        "survival_time": {"values":["10"]},
+                                        "max_number_of_ues": {"values":[{"get_param": "max_number_of_ues"}]},
+                                        "ue_mobility_level": {"values":[{"get_param": "ue_mobility_level"}]}
+                  },
+                  "AN":{
+                     "latency":{
+                        "max":{"get_param":"latency"},
+                        "min":{"get_param":"AN_latency"},
+                        "steps":5
+                     },
+                                        "s_nssai":{
+                        "values":[
+                           {"get_param": "s_nssai"}
+                        ]
+                     },
+                                        "sst": {"values":[{"get_param": "sst"}]},
+                                        "plmn_id_list": {"values":["39-00"]},
+                                        "survival_time": {"values":["10"]},
+                                        "max_number_of_ues": {"values":[{"get_param": "max_number_of_ues"}]},
+                                        "resource_sharing_level": {"values":[{"get_param": "resource_sharing_level"}]},
+                                        "ue_mobility_level": {"values":[{"get_param": "ue_mobility_level"}]}
+                  },
+                  "TN_BH":{
+                     "latency":{
+                        "max":{"get_param":"latency"},
+                        "min":{"get_param":"TN_BH_latency"},
+                        "steps":5
+                     },
+                                        "s_nssai": {"values":[{"get_param": "s_nssai"}]},
+                                        "max_bandwidth": {"values":[1000]},
+                                        "plmn_id_list": {"values":["39-00"]},
+                                        "sst": {"values":[{"get_param": "sst"}]}
+                  }
+               }
+               },
+               "inventoryProvider":"generator",
+               "inventoryType":"slice_profiles",
+               "unique":"true",
+               "defaultAttributes":{
+                  "creation_cost" : 0.9
+               }
+            }
+         ]
+      },
+      "type":"onap.policies.optimization.resource.VnfPolicy",
+      "type_version":"1.0.0",
+      "version":"1.0.0"
+   }
+}