policyPlatformUrl: http://policy.api.simpledemo.onap.org:8081/pdp/api/getConfig # Policy Dev platform URL
policyPlatformEnv: TEST # Environment for policy platform
# URL for policy model uploading
-policyPlatformUrlForModelUploading: http://policy.api.simpledemo.onap.org:8081/policy/api/v1/policytypes
+policyPlatformUrlModelUpload: https://policy.api.simpledemo.onap.org:8081/policy/api/v1/policytypes
+pathPolicyModelUpload: ../../models/policy/placement/tosca_upload/
# Config for DMaaP
messageReaderHosts: NA
def upload_policy_models():
"""Upload all the policy models reside in the folder"""
- model_path = "../../models/policy/placement/tosca"
requestId = uuid.uuid4()
config = osdf_config.deployment
+ model_path = config['pathPolicyModelUpload']
uid, passwd = config['policyPlatformUsername'], config['policyPlatformPassword']
pcuid, pcpasswd = config['policyClientUsername'], config['policyClientPassword']
headers = {"ClientAuth": base64.b64encode(bytes("{}:{}".format(pcuid, pcpasswd), "ascii"))}
headers.update({'Environment': config['policyPlatformEnv']})
headers.update({'X-ONAP-RequestID': requestId})
- url = config['policyPlatformUrlForModelUploading']
+ url = config['policyPlatformUrlModelUpload']
rc = RestClient(userid=uid, passwd=passwd, headers=headers, url=url, log_func=debug_log.debug)
for file in os.listdir(model_path):
- if not file.endswith(".yml"):
+ if not file.endswith(".yaml"):
continue
with open(file) as f:
file_converted = json.dumps(yaml.load(f))
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.AffinityPolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - zone
+ identity:
+ type: string
+ required: true
+ applicableResources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - any
+ - all
+ affinityProperties:
+ type: policy.data.affinityProperties_properties
+ required: true
+ resources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+data_types:
+ policy.data.affinityProperties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ qualifier:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - same
+ - different
+ category:
+ type: string
+ required: true
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.DistancePolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - distance_to_location
+ identity:
+ type: string
+ required: true
+ resources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ applicableResources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - any
+ - all
+ distanceProperties:
+ type: policy.data.distanceProperties_properties
+ required: true
+data_types:
+ policy.data.distanceProperties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ locationInfo:
+ type: string
+ required: true
+ distance:
+ type: policy.data.distance_properties
+ required: true
+ policy.data.distance_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ value:
+ type: string
+ required: true
+ operator:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - <
+ - <=
+ - '>'
+ - '>='
+ - '='
+ unit:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - km
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.HpaPolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - hpa
+ resources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ identity:
+ type: string
+ required: true
+ flavorFeatures:
+ type: list
+ required: true
+ entry_schema:
+ type:policy.data.flavorFeatures_properties
+data_types:
+ policy.data.flavorFeatures_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ id:
+ type: string
+ required: true
+ type:
+ type: string
+ required: true
+ directives:
+ type: list
+ required: true
+ entry_schema:
+ type: policy.data.directives_properties
+ flavorProperties:
+ type: list
+ required: true
+ entry_schema:
+ type: policy.data.flavorProperties_properties
+ policy.data.directives_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ type:
+ type: string
+ attributes:
+ type: list
+ entry_schema:
+ type: policy.data.directives_attributes_properties
+ policy.data.directives_attributes_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ attribute_name:
+ type: string
+ attribute_value:
+ type: string
+ policy.data.flavorProperties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ hpa-feature:
+ type: string
+ required: true
+ mandatory:
+ type: string
+ required: true
+ score:
+ type: string
+ required: false
+ architecture:
+ type: string
+ required: true
+ hpa-version:
+ type: string
+ required: true
+ directives:
+ type: list
+ required: true
+ entry_schema:
+ type: policy.data.directives_properties
+ hpa-feature-attributes:
+ type: list
+ required: true
+ entry_schema:
+ type: policy.data.hpa-feature-attributes_properties
+ policy.data.hpa-feature-attributes_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ hpa-attribute-key:
+ type: string
+ required: true
+ hpa-attribute-value:
+ type: string
+ required: true
+ operator:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - <
+ - <=
+ - '>'
+ - '>='
+ - '='
+ - '!='
+ - any
+ - all
+ - subset
+ unit:
+ type: string
+ required: false
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.OptimizationPolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - placement_optimization
+ identity:
+ type: string
+ required: true
+ objective:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - minimize
+ - maximize
+ objectiveParameter:
+ type: policy.data.objectiveParameter_properties
+ required: true
+data_types:
+ policy.data.objectiveParameter_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ parameterAttributes:
+ type: list
+ required: true
+ entry_schema:
+ type: policy.data.parameterAttributes_properties
+ operator:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - '*'
+ - +
+ - '-'
+ - /
+ - '%'
+ policy.data.parameterAttributes_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ resources:
+ type: string
+ required: true
+ customerLocationInfo:
+ type: string
+ required: true
+ parameter:
+ type: string
+ required: true
+ weight:
+ type: string
+ required: true
+ operator:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - '*'
+ - +
+ - '-'
+ - /
+ - '%'
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.PciPolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - pciPolicy
+ identity:
+ type: string
+ required: true
+ resources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ pciProperties:
+ type: list
+ required: false
+ entry_schema:
+ - type:policy.data.pciProperties_properties
+data_types:
+ policy.data.pciProperties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ algoCategory:
+ type: string
+ required: false
+ pciOptmizationAlgoName:
+ type: string
+ required: false
+ pciOptimizationNwConstraint:
+ type: string
+ required: false
+ pciOptimizationPriority:
+ type: string
+ required: false
+ pciOptimizationTimeConstraint:
+ type: string
+ required: false
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.QueryPolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - request_param_query
+ identity:
+ type: string
+ required: true
+ queryProperties:
+ type: list
+ required: true
+ entry_schema:
+ type:policy.data.queryProperties_properties
+data_types:
+ policy.data.queryProperties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ attribute:
+ type: string
+ required: true
+ value:
+ type: string
+ required: true
+ attribute_location:
+ type: string
+ required: true
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.SubscriberPolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - subscriberPolicy
+ identity:
+ type: string
+ required: true
+ properties:
+ type: policy.data.properties_properties
+ required: true
+data_types:
+ policy.data.properties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ subscriberName:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ subscriberRole:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ provStatus:
+ type: list
+ required: true
+ entry_schema:
+ type: string
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.Vim_fit:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - vim_fit
+ identity:
+ type: string
+ required: true
+ applicableResources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - any
+ - all
+ resources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ capacityProperties:
+ type: policy.data.capacityProperties_properties
+ required: true
+data_types:
+ policy.data.capacityProperties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ controller:
+ type: string
+ required: true
+ request:
+ type: string
+ required: true
--- /dev/null
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+policy_types:
+ - onap.policies.Optimization:
+ derived_from: tosca.policies.Root
+ version: 1.0.0
+ description: a base policy type for all policies that govern optimization
+ - onap.policies.optimization.VnfPolicy:
+ derived_from: onap.policies.Optimization
+ properties:
+ policyScope:
+ type: list
+ description: scope where the policy is applicable
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ policyType:
+ type: list
+ description: type of a policy
+ required: true
+ matchable: true
+ entry_schema:
+ type: string
+ consraints:
+ - valid_values:
+ - vnfPolicy
+ identity:
+ type: string
+ required: true
+ resources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ applicableResources:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - any
+ - all
+ vnfProperties:
+ type: list
+ required: true
+ entry_schema:
+ type:policy.data.vnfProperties_properties
+data_types:
+ policy.data.vnfProperties_properties:
+ derived_from: tosca.nodes.Root
+ properties:
+ inventoryProvider:
+ type: string
+ required: true
+ serviceType:
+ type: string
+ required: true
+ inventoryType:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - serviceInstanceId
+ - vnfName
+ - cloudRegionId
+ - vimId
+ customerId:
+ type: string
+ required: true
+