diff options
author | Saravanan A <saravanan.a75@wipro.com> | 2018-10-09 16:20:52 +0530 |
---|---|---|
committer | Saravanan A <saravanan.a75@wipro.com> | 2018-10-09 16:21:21 +0530 |
commit | 882933502c0eedc219197fa8c39a2cb733ea6729 (patch) | |
tree | 0f26c4bfcff6edae396456546e54048282c18918 /controlloop/common | |
parent | 4498fc2617e0003b7d2f53a6b09051fd216c840e (diff) |
Add implementation for OOF PCI use case
Receive DMaaP message from PCI-Handler MS with PCI Config
change recommendations through DCAE_CL_OUTPUT topic.
Trigger SDN-R (if allowed by policy) by sending
DMaaP request through SDNR-CL topic.
When the response is received from SDNR through
SDNR-CL-RSP topic, just parse and print.
Code review comments addressed
Added controller changes into amsterdam too.
Change-Id: I93e54d3f44b4266092931a5f05b766cc26f2a869
Issue-ID: POLICY-1089
Signed-off-by: Saravanan A<saravanan.a75@wipro.com>
Diffstat (limited to 'controlloop/common')
4 files changed, 78 insertions, 2 deletions
diff --git a/controlloop/common/feature-controlloop-amsterdam/pom.xml b/controlloop/common/feature-controlloop-amsterdam/pom.xml index 15f0c35b2..273d05652 100644 --- a/controlloop/common/feature-controlloop-amsterdam/pom.xml +++ b/controlloop/common/feature-controlloop-amsterdam/pom.xml @@ -107,6 +107,11 @@ </dependency> <dependency> <groupId>org.onap.policy.drools-applications.controlloop.common.model-impl</groupId> + <artifactId>sdnr</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.onap.policy.drools-applications.controlloop.common.model-impl</groupId> <artifactId>vfc</artifactId> <version>${project.version}</version> </dependency> @@ -175,6 +180,17 @@ </dependency> <dependency> <groupId>org.onap.policy.drools-applications.controlloop.common.actors</groupId> + <artifactId>actor.sdnr</artifactId> + <version>${project.version}</version> + <exclusions> + <exclusion> + <artifactId>guava</artifactId> + <groupId>com.google.guava</groupId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.onap.policy.drools-applications.controlloop.common.actors</groupId> <artifactId>actor.so</artifactId> <version>${project.version}</version> <exclusions> diff --git a/controlloop/common/feature-controlloop-amsterdam/src/main/feature/config/amsterdam-controller.properties b/controlloop/common/feature-controlloop-amsterdam/src/main/feature/config/amsterdam-controller.properties index 0d5013868..d7dc0c1c0 100644 --- a/controlloop/common/feature-controlloop-amsterdam/src/main/feature/config/amsterdam-controller.properties +++ b/controlloop/common/feature-controlloop-amsterdam/src/main/feature/config/amsterdam-controller.properties @@ -20,7 +20,7 @@ controller.name=amsterdam -dmaap.source.topics=${{DCAE_TOPIC}},APPC-CL,APPC-LCM-WRITE +dmaap.source.topics=${{DCAE_TOPIC}},APPC-CL,APPC-LCM-WRITE,SDNR-CL-RSP dmaap.source.topics.${{DCAE_TOPIC}}.servers=${{DCAE_SERVERS}} dmaap.source.topics.${{DCAE_TOPIC}}.apiKey= @@ -47,7 +47,15 @@ dmaap.source.topics.APPC-LCM-WRITE.events.org.onap.policy.appclcm.LcmResponseWra dmaap.source.topics.APPC-LCM-WRITE.events.custom.gson=org.onap.policy.appclcm.util.Serialization,gson dmaap.source.topics.APPC-LCM-WRITE.https=true -dmaap.sink.topics=APPC-CL,APPC-LCM-READ,POLICY-CL-MGT +dmaap.source.topics.SDNR-CL-RSP.servers=${{DMAAP_SERVERS}} +dmaap.source.topics.SDNR-CL-RSP.apiKey= +dmaap.source.topics.SDNR-CL-RSP.apiSecret= +dmaap.source.topics.SDNR-CL-RSP.events=org.onap.policy.sdnr.PciResponseWrapper +dmaap.source.topics.SDNR-CL-RSP.events.org.onap.policy.sdnr.PciResponseWrapper.filter=type\=response +dmaap.source.topics.SDNR-CL-RSP.events.custom.gson=org.onap.policy.sdnr.util.Serialization,gson +dmaap.source.topics.SDNR-CL-RSP.https=true + +dmaap.sink.topics=APPC-CL,APPC-LCM-READ,POLICY-CL-MGT,SDNR-CL dmaap.sink.topics.APPC-CL.servers=${{DMAAP_SERVERS}} dmaap.sink.topics.APPC-CL.apiKey= @@ -70,6 +78,14 @@ dmaap.sink.topics.POLICY-CL-MGT.events=org.onap.policy.controlloop.VirtualContro dmaap.sink.topics.POLICY-CL-MGT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty dmaap.sink.topics.POLICY-CL-MGT.https=true +dmaap.sink.topics.SDNR-CL.servers=${{DMAAP_SERVERS}} +dmaap.sink.topics.SDNR-CL.apiKey= +dmaap.sink.topics.SDNR-CL.apiSecret= +dmaap.sink.topics.SDNR-CL.events=org.onap.policy.sdnr.PciRequestWrapper +dmaap.sink.topics.SDNR-CL.events.custom.gson=org.onap.policy.sdnr.util.Serialization,gson +dmaap.sink.topics.SDNR-CL.https=true + rules.groupId= rules.artifactId= rules.version= + diff --git a/controlloop/common/policy-yaml/src/test/java/org/onap/policy/controlloop/policy/ControlLoopPolicyTest.java b/controlloop/common/policy-yaml/src/test/java/org/onap/policy/controlloop/policy/ControlLoopPolicyTest.java index a4d1baa75..00c70052e 100644 --- a/controlloop/common/policy-yaml/src/test/java/org/onap/policy/controlloop/policy/ControlLoopPolicyTest.java +++ b/controlloop/common/policy-yaml/src/test/java/org/onap/policy/controlloop/policy/ControlLoopPolicyTest.java @@ -75,6 +75,11 @@ public class ControlLoopPolicyTest { } @Test + public void testvpci() { + this.test("src/test/resources/v2.0.0/policy_ONAP_UseCase_vPCI.yaml"); + } + + @Test public void testvolte() { this.test("src/test/resources/v2.0.0/policy_ONAP_UseCase_VOLTE.yaml"); } diff --git a/controlloop/common/policy-yaml/src/test/resources/v2.0.0/policy_ONAP_UseCase_vPCI.yaml b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/policy_ONAP_UseCase_vPCI.yaml new file mode 100644 index 000000000..3d47b643a --- /dev/null +++ b/controlloop/common/policy-yaml/src/test/resources/v2.0.0/policy_ONAP_UseCase_vPCI.yaml @@ -0,0 +1,39 @@ +# Copyright 2018 Wipro Limited Intellectual Property. All rights reserved +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +controlLoop: + version: 3.0.0 + controlLoopName: ControlLoop-vPCI-fb41f388-a5f2-11e8-98d0-529269fb1459 + trigger_policy: unique-policy-id-123-modifyconfig + timeout: 1200 + abatement: false + +policies: + - id: unique-policy-id-123-modifyconfig + name: modify PCI config + description: + actor: SDNR + recipe: ModifyConfig + target: + # These fields are not used + resourceID: Eace933104d443b496b8.nodes.heat.vpg + type: VNF + retry: 0 + timeout: 300 + success: final_success + failure: final_failure + failure_timeout: final_failure_timeout + failure_retries: final_failure_retries + failure_exception: final_failure_exception + failure_guard: final_failure_guard + |