-
Bug
-
Resolution: Done
-
High
-
Honolulu Release
-
Policy 3/16-3/30
JSON against API components:
POST /policy/api/v1/policytypes: { "tosca_definitions_version": "tosca_simple_yaml_1_1_0", "policy_types": { "onap.policies.Native": { "derived_from": "tosca.policies.Root", "description": "a base policy type for all native PDP policies", "version": "1.0.0" }, "onap.policies.native.Drools": { "derived_from": "onap.policies.Native", "description": "a base policy type for all native PDP policies", "version": "1.0.0" }, "onap.policies.native.drools.Controller": { "derived_from": "onap.policies.native.Drools", "description": "a policy type for a drools controller configuration", "version": "9.0.0", "properties": { "controllerName": { "type": "string", "required": true, "description": "the drools controller name" }, "sourceTopics": { "type": "list", "required": false, "description": "source topics and applicable events", "entry_schema": { "type": "onap.datatypes.dmaap.topic" } }, "sinkTopics": { "type": "list", "required": false, "description": "sink topics and applicable events", "entry_schema": { "type": "onap.datatypes.dmaap.topic" } }, "customConfig": { "type": "map", "required": false, "description": "any use case specific configurations relevant to the drools controller", "entry_schema": { "type": "string" } } } }, "onap.policies.native.drools.Artifact": { "derived_from": "onap.policies.native.Drools", "description": "a policy type for native drools artifact policies", "version": "9.0.0", "properties": { "rulesArtifact": { "type": "onap.datatypes.native.rules_artifact", "required": true, "description": "the GAV information of the maven artifact" }, "controller": { "type": "onap.datatypes.drools.controller.relation", "required": true, "description": "the drools controller to which the current native policy is assigned" } } } }, "data_types": { "onap.datatypes.dmaap.topic": { "derived_from": "tosca.datatypes.Root", "properties": { "topicName": { "type": "string", "required": true, "description": "the dmaap topic name" }, "events": { "type": "list", "required": true, "description": "events used by this topic", "entry_schema": { "type": "onap.datatypes.dmaap.events" } } } }, "onap.datatypes.dmaap.events": { "derived_from": "tosca.datatypes.Root", "properties": { "eventClass": { "type": "string", "required": true, "description": "the event canonical class for serialization" }, "eventFilter": { "type": "string", "required": false, "description": "the JSONPath based condition to filter out the events to serialize" }, "customSerialization": { "type": "onap.datatypes.dmaap.custom_serialization", "required": false, "description": "overrides the default serialization/deserialization mechanisms with custom ones" } } }, "onap.datatypes.dmaap.custom_serialization": { "derived_from": "tosca.datatypes.Root", "properties": { "customSerializerClass": { "type": "string", "required": true, "description": "the class that contains the JSON parser serializer/deserializer." }, "jsonParser": { "type": "string", "required": true, "description": "static field in customSerialized class with the json parser (currently only gson supported)" } } }, "onap.datatypes.native.rules_artifact": { "derived_from": "tosca.datatypes.Root", "properties": { "groupId": { "type": "string", "required": true, "description": "the groupId of the maven artifact" }, "artifactId": { "type": "string", "required": true, "description": "the artifactId of the maven artifact" }, "version": { "type": "string", "required": true, "description": "the version of the maven artifact" } } }, "onap.datatypes.drools.controller.relation": { "derived_from": "tosca.datatypes.Root", "properties": { "controllerName": { "type": "string", "required": true, "description": "the name of drools controller policy" } } } } }
I believe this used to work in previous releases as part of the jmeter runs.
{ "code": "NOT_ACCEPTABLE", "error": "\"incoming fragment\" INVALID, item has status INVALID\n item \"entity\" value \"onap.datatypes.drools.controller.relation:0.0.0\" INVALID, does not equal existing entity\n", "details": [ "\"incoming fragment\" INVALID, item has status INVALID\n item \"entity\" value \"onap.datatypes.drools.controller.relation:0.0.0\" INVALID, does not equal existing entity\n" ] }
Stack Trace:
21:13:33.817 [qtp1623148876-21] WARN o.o.p.a.main.rest.ApiRestController - POST /policytypes21:13:33.817 [qtp1623148876-21] WARN o.o.p.a.main.rest.ApiRestController - POST /policytypesorg.onap.policy.models.base.PfModelRuntimeException: "incoming fragment" INVALID, item has status INVALID item "entity" value "onap.datatypes.drools.controller.relation:0.0.0" INVALID, does not equal existing entity at org.onap.policy.models.tosca.utils.ToscaServiceTemplateUtils.addFragment(ToscaServiceTemplateUtils.java:96) at org.onap.policy.models.tosca.simple.provider.SimpleToscaProvider.appendToServiceTemplate(SimpleToscaProvider.java:108) at org.onap.policy.models.tosca.simple.provider.SimpleToscaProvider.createPolicyTypes(SimpleToscaProvider.java:390) at org.onap.policy.models.tosca.authorative.provider.AuthorativeToscaProvider.createPolicyTypes(AuthorativeToscaProvider.java:311) at org.onap.policy.models.provider.impl.DatabasePolicyModelsProviderImpl.createPolicyTypes(DatabasePolicyModelsProviderImpl.java:134) at org.onap.policy.api.main.rest.provider.PolicyTypeProvider.createPolicyType(PolicyTypeProvider.java:85) at org.onap.policy.api.main.rest.ApiRestController.createPolicyType(ApiRestController.java:437)