aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChenfei Gao <cgao@research.att.com>2019-10-09 16:39:35 -0400
committerChenfei Gao <cgao@research.att.com>2019-10-09 16:39:49 -0400
commita855486a563a5686797b9ea304a46d044c9c0884 (patch)
treea805e05434714360b0c0b55a978533da9f707bed
parent0ee2ca49f61f75179f3118cbadd2406f7c72cfb3 (diff)
Added new policy example to support junit test for new simplified API
Issue-ID: POLICY-1991 Change-Id: Ib52bffe7895dc0625c77da7aa954bb71ed16187d Signed-off-by: Chenfei Gao <cgao@research.att.com>
-rw-r--r--models-examples/src/main/resources/policies/onap.policies.controlloop.guard.MinMax.yaml43
-rw-r--r--models-examples/src/main/resources/policies/vCPE.policies.optimization.input.tosca.json234
2 files changed, 234 insertions, 43 deletions
diff --git a/models-examples/src/main/resources/policies/onap.policies.controlloop.guard.MinMax.yaml b/models-examples/src/main/resources/policies/onap.policies.controlloop.guard.MinMax.yaml
deleted file mode 100644
index 0fc677d9c..000000000
--- a/models-examples/src/main/resources/policies/onap.policies.controlloop.guard.MinMax.yaml
+++ /dev/null
@@ -1,43 +0,0 @@
-policy_types:
- onap.policies.controlloop.Guard:
- derived_from: tosca.policies.Root
- version: 1.0.0
- description: Guard Policies for Control Loop Operational Policies
- onap.policies.controlloop.guard.MinMax:
- derived_from: onap.policies.controlloop.Guard
- version: 1.0.0
- description: Supports Min/Max number of VF Modules
- properties:
- minmax_policy:
- type: map
- description: null
- entry_schema:
- type: onap.datatypes.guard.MinMax
-data_types:
- onap.datatypes.guard.MinMax:
- derived_from: tosca.datatypes.Root
- properties:
- actor:
- type: string
- description: Specifies the Actor
- required: true
- recipe:
- type: string
- description: Specified the Recipe
- required: true
- time_range:
- type: tosca.datatypes.TimeInterval
- description: An optional range of time during the day the Min/Max limit is valid for.
- required: false
- controlLoopName:
- type: string
- description: An optional specific control loop to apply this guard to.
- required: false
- min_vf_module_instances:
- type: integer
- required: true
- description: The minimum instances of this VF-Module
- max_vf_module_instances:
- type: integer
- required: false
- description: The maximum instances of this VF-Module
diff --git a/models-examples/src/main/resources/policies/vCPE.policies.optimization.input.tosca.json b/models-examples/src/main/resources/policies/vCPE.policies.optimization.input.tosca.json
new file mode 100644
index 000000000..68e3a4415
--- /dev/null
+++ b/models-examples/src/main/resources/policies/vCPE.policies.optimization.input.tosca.json
@@ -0,0 +1,234 @@
+{
+ "tosca_definitions_version": "tosca_simple_yaml_1_0_0",
+ "topology_template": {
+ "policies": [
+ {
+ "OSDF_CASABLANCA.Affinity_vCPE_1": {
+ "type": "onap.policies.optimization.AffinityPolicy",
+ "version": "1.0.0",
+ "metadata": {
+ "policy-id": "OSDF_CASABLANCA.Affinity_vCPE_1"
+ },
+ "properties": {
+ "identity": "affinity_vCPE",
+ "policyScope": [
+ "vCPE",
+ "US",
+ "INTERNATIONAL",
+ "ip",
+ "vGMuxInfra",
+ "vG"
+ ],
+ "affinityProperties": {
+ "qualifier": "same",
+ "category": "complex"
+ },
+ "policyType": "zone",
+ "resources": [
+ "vGMuxInfra",
+ "vG"
+ ]
+ }
+ }
+ },
+ {
+ "OSDF_CASABLANCA.Capacity_vG_1": {
+ "type": "onap.policies.optimization.Vim_fit",
+ "version": "1.0.0",
+ "metadata": {
+ "policy-id": "OSDF_CASABLANCA.Capacity_vG_1"
+ },
+ "properties": {
+ "identity": "capacity_vG",
+ "policyScope": [
+ "VCPE",
+ "US",
+ "INTERNATIONAL",
+ "ip",
+ "vG"
+ ],
+ "resources": [
+ "vG"
+ ],
+ "capacityProperty": {
+ "controller": "multicloud",
+ "request": "{\"vCPU\": 10, \"Memory\": {\"quantity\": {\"get_param\": \"REQUIRED_MEM\"}, \"unit\": \"GB\"}, \"Storage\": {\"quantity\": {\"get_param\": \"REQUIRED_DISK\"}, \"unit\": \"GB\"}}"
+ },
+ "policyType": "vim_fit",
+ "applicableResources": "any"
+ }
+ }
+ },
+ {
+ "OSDF_CASABLANCA.Distance_vG_1": {
+ "type": "onap.policies.optimization.DistancePolicy",
+ "version": "1.0.0",
+ "metadata": {
+ "policy-id": "OSDF_CASABLANCA.Distance_vG_1"
+ },
+ "properties": {
+ "distanceProperties": {
+ "locationInfo": "customer_loc",
+ "distance": {
+ "value": 1500,
+ "operator": "<",
+ "unit": "km"
+ }
+ },
+ "identity": "distance-vG",
+ "resources": [
+ "vG"
+ ],
+ "policyScope": [
+ "vCPE",
+ "US",
+ "INTERNATIONAL",
+ "ip",
+ "vG"
+ ],
+ "policyType": "distance_to_location",
+ "applicableResources": "any"
+ }
+ }
+ },
+ {
+ "OSDF_CASABLANCA.hpa_policy_vG_1": {
+ "type": "onap.policies.optimization.HpaPolicy",
+ "version": "1.0.0",
+ "metadata": {
+ "policy-id": "OSDF_CASABLANCA.hpa_policy_vG_1"
+ },
+ "properties": {
+ "resources": [
+ "vG"
+ ],
+ "identity": "hpa-vG",
+ "policyScope": [
+ "vCPE",
+ "US",
+ "INTERNATIONAL",
+ "ip",
+ "vG"
+ ],
+ "policyType": "hpa"
+ }
+ }
+ },
+ {
+ "OSDF_CASABLANCA.queryPolicy_vCPE": {
+ "type": "onap.policies.optimization.QueryPolicy",
+ "version": "1.0.0",
+ "metadata": {
+ "policy-id": "OSDF_CASABLANCA.queryPolicy_vCPE"
+ },
+ "properties": {
+ "queryProperties": [
+ {
+ "attribute": "locationId",
+ "attribute_location": "customerLocation",
+ "value": ""
+ },
+ {
+ "attribute": "id",
+ "attribute_location": "vpnInfo.vpnId",
+ "value": ""
+ },
+ {
+ "attribute": "upstreamBW",
+ "attribute_location": "vpnInfo.upstreamBW",
+ "value": ""
+ },
+ {
+ "attribute": "customerLatitude",
+ "attribute_location": "customerLatitude",
+ "value": 1.1
+ },
+ {
+ "attribute": "customerLongitude",
+ "attribute_location": "customerLongitude",
+ "value": 2.2
+ }
+ ],
+ "serviceName": "vCPE",
+ "policyScope": [
+ "vCPE",
+ "US",
+ "INTERNATIONAL",
+ "ip",
+ "vGMuxInfra",
+ "vG"
+ ],
+ "policyType": "request_param_query",
+ "identity": "vCPE_Query_Policy"
+ }
+ }
+ },
+ {
+ "OSDF_CASABLANCA.SubscriberPolicy_v1": {
+ "type": "onap.policies.optimization.SubscriberPolicy",
+ "version": "1.0.0",
+ "metadata": {
+ "policy-id": "OSDF_CASABLANCA.SubscriberPolicy_v1"
+ },
+ "properties": {
+ "identity": "subscriber_vCPE",
+ "policyScope": [
+ "vCPE",
+ "subscriber_x",
+ "subscriber_y",
+ "subscriberPolicy"
+ ],
+ "properties": {
+ "subscriberName": [
+ "subscriber_x",
+ "subscriber_y"
+ ],
+ "subscriberRole": [
+ "PVT Homing"
+ ],
+ "provStatus": [
+ "CAPPED"
+ ]
+ },
+ "policyType": "subscriberPolicy",
+ "serviceName": "vCPE"
+ }
+ }
+ },
+ {
+ "OSDF_CASABLANCA.vnfPolicy_vG": {
+ "type": "onap.policies.optimization.VnfPolicy",
+ "version": "1.0.0",
+ "metadata": {
+ "policy-id": "OSDF_CASABLANCA.vnfPolicy_vG"
+ },
+ "properties": {
+ "identity": "vnf_vG",
+ "policyScope": [
+ "vCPE",
+ "US",
+ "INTERNATIONAL",
+ "ip",
+ "vG"
+ ],
+ "policyType": "vnfPolicy",
+ "resources": [
+ "vG"
+ ],
+ "applicableResources": "any",
+ "vnfProperties": [
+ {
+ "inventoryProvider": "aai",
+ "serviceType": "",
+ "inventoryType": "cloud",
+ "customerId": "",
+ "orchestrationStatus": "",
+ "equipmentRole": ""
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+} \ No newline at end of file