diff options
author | jhh <jorge.hernandez-herrero@att.com> | 2020-08-21 13:29:21 -0500 |
---|---|---|
committer | jhh <jorge.hernandez-herrero@att.com> | 2020-08-21 13:32:52 -0500 |
commit | 0a5d9cf30c61956e62cc7db4faf84f999a7196cc (patch) | |
tree | cb5bf992abb5faa0c300b77e5d85e3e953e4f9be /controlloop | |
parent | 56efff004af2d1be64c67f7c8091cb4553a0e86b (diff) |
remove legacy operational policies support
Issue-ID: POLICY-2765
Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
Change-Id: I454365943465863b108ba8668b2bc4b201986959
Diffstat (limited to 'controlloop')
7 files changed, 11 insertions, 57 deletions
diff --git a/controlloop/common/controller-frankfurt/src/main/resources/META-INF/kmodule.xml b/controlloop/common/controller-frankfurt/src/main/resources/META-INF/kmodule.xml index b5e4e3f0e..011d7ef2f 100644 --- a/controlloop/common/controller-frankfurt/src/main/resources/META-INF/kmodule.xml +++ b/controlloop/common/controller-frankfurt/src/main/resources/META-INF/kmodule.xml @@ -19,8 +19,7 @@ ============LICENSE_END========================================================= --> <kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule"> - <kbase name="onap.policies.controlloop.operational.common.Drools" default="false" equalsBehavior="equality"/> - <kbase name="onap.policies.controlloop.Operational" equalsBehavior="equality" + <kbase name="onap.policies.controlloop.operational.common.Drools" equalsBehavior="equality" packages="org.onap.policy.controlloop" includes="onap.policies.controlloop.operational.common.Drools"> <ksession name="frankfurt"/> </kbase> diff --git a/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/processor/ControlLoopProcessor.java b/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/processor/ControlLoopProcessor.java index f1835d740..f578c8a85 100644 --- a/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/processor/ControlLoopProcessor.java +++ b/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/processor/ControlLoopProcessor.java @@ -22,8 +22,6 @@ package org.onap.policy.controlloop.processor; import java.io.Serializable; import java.lang.reflect.InvocationTargetException; -import java.net.URLDecoder; -import java.nio.charset.StandardCharsets; import java.util.stream.Collectors; import lombok.Getter; import org.apache.commons.beanutils.BeanUtils; @@ -39,7 +37,6 @@ import org.onap.policy.controlloop.policy.PolicyResult; import org.onap.policy.controlloop.policy.Target; import org.onap.policy.controlloop.policy.TargetType; import org.onap.policy.drools.domain.models.DroolsPolicy; -import org.onap.policy.drools.domain.models.legacy.LegacyPolicy; import org.onap.policy.drools.domain.models.operational.Operation; import org.onap.policy.drools.domain.models.operational.OperationalPolicy; import org.onap.policy.drools.domain.models.operational.OperationalTarget; @@ -93,11 +90,7 @@ public class ControlLoopProcessor implements Serializable { */ public ControlLoopProcessor(ToscaPolicy toscaPolicy) throws ControlLoopException { try { - // TODO: automate policy type to models mapping - this.policy = - ("onap.policies.controlloop.Operational".equals(toscaPolicy.getType())) - ? buildPolicyFromToscaLegacy(toscaPolicy) - : buildPolicyFromToscaCompliant(toscaPolicy); + this.policy = buildPolicyFromToscaCompliant(toscaPolicy); this.currentNestedPolicyId = this.policy.getControlLoop().getTrigger_policy(); this.toscaOpPolicy = toscaPolicy; @@ -106,17 +99,6 @@ public class ControlLoopProcessor implements Serializable { } } - protected ControlLoopPolicy buildPolicyFromToscaLegacy(ToscaPolicy policy) - throws CoderException { - LegacyPolicy legacyPolicy = - PolicyEngineConstants.getManager().getDomainMaker().convertTo(policy, LegacyPolicy.class); - this.domainOpPolicy = legacyPolicy; - String decodedPolicy = URLDecoder.decode(legacyPolicy.getProperties().getContent(), StandardCharsets.UTF_8); - return new Yaml( - new CustomClassLoaderConstructor( - ControlLoopPolicy.class, ControlLoopPolicy.class.getClassLoader())).load(decodedPolicy); - } - private Target toStandardTarget(OperationalTarget opTarget) { Target target = new Target(TargetType.valueOf(opTarget.getTargetType())); try { diff --git a/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/processor/ControlLoopProcessorTest.java b/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/processor/ControlLoopProcessorTest.java index 47e7d5344..1031c86c7 100644 --- a/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/processor/ControlLoopProcessorTest.java +++ b/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/processor/ControlLoopProcessorTest.java @@ -80,19 +80,6 @@ public class ControlLoopProcessorTest { } @Test - public void testControlLoopFromToscaLegacy() throws IOException, CoderException, ControlLoopException { - String policy = - new String(Files.readAllBytes(Paths.get("src/test/resources/tosca-policy-legacy-vcpe.json"))); - assertNotNull( - new ControlLoopProcessor(coder.decode(policy, ToscaPolicy.class)).getCurrentPolicy()); - - policy = - new String(Files.readAllBytes(Paths.get("src/test/resources/tosca-policy-legacy-vdns.json"))); - assertNotNull( - new ControlLoopProcessor(coder.decode(policy, ToscaPolicy.class)).getCurrentPolicy()); - } - - @Test public void testControlLoopFromToscaCompliant() throws CoderException, ControlLoopException { assertNotNull( @@ -119,7 +106,7 @@ public class ControlLoopProcessorTest { public void testControlLoopFromToscaCompliantBad() throws CoderException { ToscaPolicy toscaPolicy = getPolicyFromResource( "policies/vCPE.policy.operational.input.tosca.json", "operational.restart"); - toscaPolicy.setType("onap.policies.controlloop.Operational"); + toscaPolicy.setVersion(null); assertThatThrownBy(() -> new ControlLoopProcessor(toscaPolicy)).hasCauseInstanceOf(CoderException.class); } diff --git a/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/utils/ControlLoopUtilsTest.java b/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/utils/ControlLoopUtilsTest.java index 7238ba05b..c590741f2 100644 --- a/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/utils/ControlLoopUtilsTest.java +++ b/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/utils/ControlLoopUtilsTest.java @@ -28,15 +28,20 @@ import java.nio.file.Files; import java.nio.file.Paths; import org.junit.Test; import org.onap.policy.common.utils.coder.StandardCoder; +import org.onap.policy.common.utils.resources.ResourceUtils; import org.onap.policy.controlloop.drl.legacy.ControlLoopParams; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy; +import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate; public class ControlLoopUtilsTest { @Test public void testToControlLoopParams() throws Exception { - String policy = Files.readString(Paths.get("src/test/resources/tosca-policy-legacy-vcpe.json")); - ToscaPolicy toscaPolicy = new StandardCoder().decode(policy, ToscaPolicy.class); + String policyJson = + ResourceUtils.getResourceAsString("policies/vCPE.policy.operational.input.tosca.json"); + ToscaServiceTemplate serviceTemplate = new StandardCoder().decode(policyJson, ToscaServiceTemplate.class); + ToscaPolicy toscaPolicy = + serviceTemplate.getToscaTopologyTemplate().getPolicies().get(0).get("operational.restart"); ControlLoopParams params = ControlLoopUtils.toControlLoopParams(toscaPolicy); assertEquals("ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", params.getClosedLoopControlName()); diff --git a/controlloop/common/eventmanager/src/test/resources/tosca-policy-legacy-vcpe.json b/controlloop/common/eventmanager/src/test/resources/tosca-policy-legacy-vcpe.json deleted file mode 100644 index fd7c718db..000000000 --- a/controlloop/common/eventmanager/src/test/resources/tosca-policy-legacy-vcpe.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "type": "onap.policies.controlloop.Operational", - "type_version": "1.0.0", - "properties": { - "content": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard" - }, - "name": "operational.restart", - "version": "1.0.0" -} diff --git a/controlloop/common/eventmanager/src/test/resources/tosca-policy-legacy-vdns.json b/controlloop/common/eventmanager/src/test/resources/tosca-policy-legacy-vdns.json deleted file mode 100644 index 5147d9922..000000000 --- a/controlloop/common/eventmanager/src/test/resources/tosca-policy-legacy-vdns.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "type": "onap.policies.controlloop.Operational", - "type_version": "1.0.0", - "properties": { - "content": "controlLoop%3A%0A%20%20version%3A%202.0.0%0A%20%20controlLoopName%3A%20ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3%0A%20%20services%3A%0A%20%20%20%20-%20serviceName%3A%20d4738992-6497-4dca-9db9%0A%20%20%20%20%20%20serviceInvariantUUID%3A%20dc112d6e-7e73-4777-9c6f-1a7fb5fd1b6f%0A%20%20%20%20%20%20serviceUUID%3A%202eea06c6-e1d3-4c3a-b9c4-478c506eeedf%0A%20%20trigger_policy%3A%20unique-policy-id-1-scale-up%0A%20%20timeout%3A%2060%0A%0Apolicies%3A%0A%20%20-%20id%3A%20unique-policy-id-1-scale-up%0A%20%20%20%20name%3A%20Create%20a%20new%20VF%20Module%0A%20%20%20%20description%3A%0A%20%20%20%20actor%3A%20SO%0A%20%20%20%20recipe%3A%20VF%20Module%20Create%0A%20%20%20%20target%3A%0A%20%20%20%20%20%20type%3A%20VFMODULE%0A%20%20%20%20%20%20modelInvariantId%3A%20e6130d03-56f1-4b0a-9a1d-e1b2ebc30e0e%0A%20%20%20%20%20%20modelVersionId%3A%2094b18b1d-cc91-4f43-911a-e6348665f292%0A%20%20%20%20%20%20modelName%3A%20VfwclVfwsnkBbefb8ce2bde..base_vfw..module-0%0A%20%20%20%20%20%20modelVersion%3A%201%0A%20%20%20%20%20%20modelCustomizationId%3A%2047958575-138f-452a-8c8d-d89b595f8164%0A%20%20%20%20payload%3A%0A%20%20%20%20%20%20requestParameters%3A%20%27%7B%22usePreload%22%3Atrue%2C%22userParams%22%3A%5B%5D%7D%27%0A%20%20%20%20%20%20configurationParameters%3A%20%27%5B%7B%22ip-addr%22%3A%22%24.vf-module-topology.vf-module-parameters.param%5B9%5D%22%2C%22oam-ip-addr%22%3A%22%24.vf-module-topology.vf-module-parameters.param%5B16%5D%22%2C%22enabled%22%3A%22%24.vf-module-topology.vf-module-parameters.param%5B23%5D%22%7D%5D%27%0A%20%20%20%20retry%3A%200%0A%20%20%20%20timeout%3A%2030%0A%20%20%20%20success%3A%20final_success%0A%20%20%20%20failure%3A%20final_failure%0A%20%20%20%20failure_timeout%3A%20final_failure_timeout%0A%20%20%20%20failure_retries%3A%20final_failure_retries%0A%20%20%20%20failure_exception%3A%20final_failure_exception%0A%20%20%20%20failure_guard%3A%20final_failure_guard%0A" - }, - "name": "vlb", - "version": "1.0.0" -}
\ No newline at end of file diff --git a/controlloop/common/rules-test/src/test/resources/META-INF/kmodule.xml b/controlloop/common/rules-test/src/test/resources/META-INF/kmodule.xml index 07041c6b1..cc0009735 100644 --- a/controlloop/common/rules-test/src/test/resources/META-INF/kmodule.xml +++ b/controlloop/common/rules-test/src/test/resources/META-INF/kmodule.xml @@ -19,8 +19,7 @@ ============LICENSE_END========================================================= --> <kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule"> - <kbase name="onap.policies.controlloop.operational.common.Drools" default="false" equalsBehavior="equality"/> - <kbase name="onap.policies.controlloop.Operational" equalsBehavior="equality" + <kbase name="onap.policies.controlloop.operational.common.Drools" equalsBehavior="equality" packages="org.onap.policy.controlloop" includes="onap.policies.controlloop.operational.common.Drools"> <ksession name="rulesTest"/> </kbase> |