From 8860779ac1cfe86d0a62efa1406e656b7677c6b7 Mon Sep 17 00:00:00 2001 From: Jorge Hernandez Date: Tue, 8 Aug 2017 15:09:08 -0500 Subject: move packages build + tweaking pom.xml Change-Id: Iac032aa8f379cc8d614ec7913b41a68cbda9674d Issue-ID: POLICY-162 Signed-off-by: Jorge Hernandez --- controlloop/common/packages/apps/pom.xml | 77 ----- .../common/packages/apps/src/assembly/zip.xml | 40 --- .../common/packages/apps/src/files/README.apps.txt | 8 - controlloop/common/packages/artifacts/pom.xml | 136 --------- .../common/packages/artifacts/src/assembly/zip.xml | 33 --- controlloop/common/packages/basex/pom.xml | 61 ---- .../common/packages/basex/src/assembly/zip.xml | 36 --- .../basex/src/files/bin/create-closed-loop-demo.sh | 315 --------------------- .../src/files/config/vDNS-controller.properties | 55 ---- .../src/files/config/vFW-controller.properties | 55 ---- controlloop/common/packages/pom.xml | 43 --- controlloop/common/pom.xml | 1 - controlloop/packages/apps/pom.xml | 77 +++++ controlloop/packages/apps/src/assembly/zip.xml | 40 +++ .../packages/apps/src/files/README.apps.txt | 8 + controlloop/packages/artifacts/pom.xml | 154 ++++++++++ .../packages/artifacts/src/assembly/zip.xml | 33 +++ controlloop/packages/basex/pom.xml | 61 ++++ controlloop/packages/basex/src/assembly/zip.xml | 36 +++ .../basex/src/files/bin/create-closed-loop-demo.sh | 315 +++++++++++++++++++++ .../src/files/config/vDNS-controller.properties | 55 ++++ .../src/files/config/vFW-controller.properties | 55 ++++ controlloop/packages/pom.xml | 43 +++ controlloop/pom.xml | 1 + .../archetype-closedloop-demo-rules/pom.xml | 4 +- .../src/main/resources/archetype-resources/pom.xml | 5 - 26 files changed, 880 insertions(+), 867 deletions(-) delete mode 100644 controlloop/common/packages/apps/pom.xml delete mode 100644 controlloop/common/packages/apps/src/assembly/zip.xml delete mode 100644 controlloop/common/packages/apps/src/files/README.apps.txt delete mode 100644 controlloop/common/packages/artifacts/pom.xml delete mode 100644 controlloop/common/packages/artifacts/src/assembly/zip.xml delete mode 100644 controlloop/common/packages/basex/pom.xml delete mode 100644 controlloop/common/packages/basex/src/assembly/zip.xml delete mode 100755 controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh delete mode 100644 controlloop/common/packages/basex/src/files/config/vDNS-controller.properties delete mode 100644 controlloop/common/packages/basex/src/files/config/vFW-controller.properties delete mode 100644 controlloop/common/packages/pom.xml create mode 100644 controlloop/packages/apps/pom.xml create mode 100644 controlloop/packages/apps/src/assembly/zip.xml create mode 100644 controlloop/packages/apps/src/files/README.apps.txt create mode 100644 controlloop/packages/artifacts/pom.xml create mode 100644 controlloop/packages/artifacts/src/assembly/zip.xml create mode 100644 controlloop/packages/basex/pom.xml create mode 100644 controlloop/packages/basex/src/assembly/zip.xml create mode 100644 controlloop/packages/basex/src/files/bin/create-closed-loop-demo.sh create mode 100644 controlloop/packages/basex/src/files/config/vDNS-controller.properties create mode 100644 controlloop/packages/basex/src/files/config/vFW-controller.properties create mode 100644 controlloop/packages/pom.xml (limited to 'controlloop') diff --git a/controlloop/common/packages/apps/pom.xml b/controlloop/common/packages/apps/pom.xml deleted file mode 100644 index f591bdc38..000000000 --- a/controlloop/common/packages/apps/pom.xml +++ /dev/null @@ -1,77 +0,0 @@ - - - - - 4.0.0 - - - org.onap.policy.drools-applications - packages - 1.1.0-SNAPSHOT - - - apps - pom - - PDP-D APPS Installation Package - PDP-D APPS Installation Package - - - - - maven-assembly-plugin - - - - single - - package - - - src/assembly/zip.xml - - false - - - - - - - - - - - org.onap.policy.drools-applications - basex - ${project.version} - tar.gz - - - org.onap.policy.drools-applications - artifacts - ${project.version} - zip - - - - - diff --git a/controlloop/common/packages/apps/src/assembly/zip.xml b/controlloop/common/packages/apps/src/assembly/zip.xml deleted file mode 100644 index f3392e130..000000000 --- a/controlloop/common/packages/apps/src/assembly/zip.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - zipfile - - zip - - false - - - src/files - . - 755 - - - - - false - - - - diff --git a/controlloop/common/packages/apps/src/files/README.apps.txt b/controlloop/common/packages/apps/src/files/README.apps.txt deleted file mode 100644 index aab021885..000000000 --- a/controlloop/common/packages/apps/src/files/README.apps.txt +++ /dev/null @@ -1,8 +0,0 @@ - -The PDP-D apps installation package contains: - -1. artifacts-.zip contains models and other jars to support PDP-D applications. -2. basex-.tar.gz contains scripts and additional files to support the PDP-D models. - -The apps-.zip must be placed in the same directory as the installation package -before installation before installation is attempted. diff --git a/controlloop/common/packages/artifacts/pom.xml b/controlloop/common/packages/artifacts/pom.xml deleted file mode 100644 index e68b9ee6b..000000000 --- a/controlloop/common/packages/artifacts/pom.xml +++ /dev/null @@ -1,136 +0,0 @@ - - - - - 4.0.0 - - - org.onap.policy.drools-applications - packages - 1.1.0-SNAPSHOT - - - artifacts - pom - - Artifacts for PDP-D Applications - PDP-D models, rules and tooling - - - - - maven-assembly-plugin - - - - single - - package - - - src/assembly/zip.xml - - false - - - - - - - - - - - org.onap.policy.drools-applications - drools-pdp-apps - ${project.version} - pom - - - org.onap.policy.drools-applications - controlloop - ${project.version} - pom - - - org.onap.policy.drools-applications - common - ${project.version} - pom - - - org.onap.policy.drools-applications - model-impl - ${project.version} - pom - - - - org.onap.policy.drools-applications - events - ${project.version} - jar - - - org.onap.policy.drools-applications - appc - ${project.version} - jar - - - org.onap.policy.drools-applications - aai - ${project.version} - jar - - - org.onap.policy.drools-applications - mso - ${project.version} - jar - - - org.onap.policy.drools-applications - trafficgenerator - ${project.version} - jar - - - org.onap.policy.drools-applications - eventmanager - ${project.version} - jar - - - org.onap.policy.drools-applications - guard - ${project.version} - jar - - - org.onap.policy.drools-applications - policy-yaml - ${project.version} - jar - - - diff --git a/controlloop/common/packages/artifacts/src/assembly/zip.xml b/controlloop/common/packages/artifacts/src/assembly/zip.xml deleted file mode 100644 index e3f018d26..000000000 --- a/controlloop/common/packages/artifacts/src/assembly/zip.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - zipfile - - zip - - false - - - artifacts - false - - - diff --git a/controlloop/common/packages/basex/pom.xml b/controlloop/common/packages/basex/pom.xml deleted file mode 100644 index 7e2014b86..000000000 --- a/controlloop/common/packages/basex/pom.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - - 4.0.0 - - - org.onap.policy.drools-applications - packages - 1.1.0-SNAPSHOT - - - basex - pom - - PDP-D APPS Base Package - PDP-D APPS Packaging - - - - - maven-assembly-plugin - - - - single - - package - - - src/assembly/zip.xml - - false - - - - - - - - - diff --git a/controlloop/common/packages/basex/src/assembly/zip.xml b/controlloop/common/packages/basex/src/assembly/zip.xml deleted file mode 100644 index a33f1b7e5..000000000 --- a/controlloop/common/packages/basex/src/assembly/zip.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - basex - - tar.gz - - false - - - src/files - . - 700 - 700 - - - - diff --git a/controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh b/controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh deleted file mode 100755 index 5fe83532c..000000000 --- a/controlloop/common/packages/basex/src/files/bin/create-closed-loop-demo.sh +++ /dev/null @@ -1,315 +0,0 @@ -#! /bin/bash - -### -# ============LICENSE_START======================================================= -# PDP-D APPS Base Package -# ================================================================================ -# Copyright (C) 2017 AT&T 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. -# ============LICENSE_END========================================================= -### - -# Interactive script to generate a closed loop demo rules artifact -# for testing purposes of standalone PDP-D - -echo "Closed Loop Demo Creator for standalone PDP-D" -echo "----------------------------------------------" -echo - -GROUPID="org.onap.policy.demo.rules" -ARTIFACTID="closed-loop-demo-rules" -VERSION="1.1.0-SNAPSHOT" -PACKAGE="org.onap.policy.demo.rules" -CLOSEDLOOPCONTROLNAME="CL-FRWL-LOW-TRAFFIC-SIG-d925ed73-8231-4d02-9545-db4e101f88f8" -POLICYSCOPE="service=test;resource=FRWL;type=configuration" -POLICYNAME="FirewallDemo" -POLICYVERSION="v0.0.1" -ACTOR="APPC" -APPCTOPIC="APPC-CL" -APPCSERVERS="vm1.mr.simpledemo.openecomp.org" -APPCAPIKEY= -APPCAPISECRET= -NOTIFICATIONTOPIC="POLICY-CL-MGT" -NOTIFICATIONSERVERS="vm1.mr.simpledemo.openecomp.org" -NOTIFICATIONAPIKEY= -NOTIFICATIONAPISECRET= -DCAETOPIC="DCAE-CL-EVENT" -DCAESERVERS="vm1.mr.simpledemo.openecomp.org" -DCAEAPIKEY= -DCAEAPISECRET= -AAIURL="http://localhost:7676/aai/test" -AAIUSERNAME="policy" -AAIPASSWORD="policy" -AAINAMEDQUERYUUID=d925ed73-8231-4d02-9545-db4e101fffff -AAIPATTERNMATCH=1 -MSOURL="http://localhost:7677/mso/test" -MSOUSERNAME="policy" -MSOPASSWORD="policy" - -read -e -i "${GROUPID}" -p "Closed Loop Rules Maven Group Id> " GROUP_ID -read -e -i "${ARTIFACTID}" -p "Closed Loop Rules Maven Coordinates Artifact Id> " ARTIFACTID -read -e -i "${VERSION}" -p "Closed Loop Rules Maven Coordinates Version> " VERSION -read -e -i "${PACKAGE}" -p "Closed Loop Rules Package> " PACKAGE -read -e -i "${CLOSEDLOOPCONTROLNAME}" -p "Closed Loop Template Control Name> " CLOSEDLOOPCONTROLNAME -read -e -i "${POLICYSCOPE}" -p "Closed Loop Policy Scope> " POLICYSCOPE -read -e -i "${POLICYNAME}" -p "Closed Loop Policy Name> " POLICYNAME -read -e -i "${POLICYVERSION}" -p "Closed Loop Policy Version> " POLICYVERSION -read -e -i "${ACTOR}" -p "Closed Loop Actor ('APPC' or 'MSO')> " ACTOR -read -e -i "${APPCTOPIC}" -p "Closed Loop APP-C Recipe Topic> " APPCTOPIC -read -e -i "${APPCSERVERS}" -p "Closed Loop APP-C UEB Servers for ${APPCTOPIC} topic> " APPCSERVERS -read -e -i "${APPCAPIKEY}" -p "Closed Loop APP-C UEB API Key for ${APPCTOPIC} topic> " APPCAPIKEY -read -e -i "${APPCAPISECRET}" -p "Closed Loop APP-C UEB API Secret for ${APPCTOPIC} topic> " APPCAPISECRET -read -e -i "${NOTIFICATIONTOPIC}" -p "Closed Loop Ruby Notification Topic> " NOTIFICATIONTOPIC -read -e -i "${NOTIFICATIONSERVERS}" -p "Closed Loop Ruby UEB Servers for ${NOTIFICATIONTOPIC} topic> " NOTIFICATIONSERVERS -read -e -i "${NOTIFICATIONAPIKEY}" -p "Closed Loop Ruby UEB API Key ${NOTIFICATIONTOPIC} topic> " NOTIFICATIONAPIKEY -read -e -i "${NOTIFICATIONAPISECRET}" -p "Closed Loop Ruby UEB API Secret ${NOTIFICATIONTOPIC} topic> " NOTIFICATIONAPISECRET -read -e -i "${DCAETOPIC}" -p "Closed Loop DCAE Topic> " DCAETOPIC -read -e -i "${DCAESERVERS}" -p "Closed Loop DCAE UEB Servers> " DCAESERVERS -read -e -i "${DCAEAPIKEY}" -p "Closed Loop DCAE UEB API Key for ${DCAETOPIC} topic> " DCAEAPIKEY -read -e -i "${DCAEAPISECRET}" -p "Closed Loop DCAE UEB API Secret for ${DCAETOPIC} topic> " DCAEAPISECRET -read -e -i "${AAIURL}" -p "Closed Loop AAI URL> " AAIURL -read -e -i "${AAIUSERNAME}" -p "Closed Loop AAI Username> " AAIUSERNAME -read -e -i "${AAIPASSWORD}" -p "Closed Loop AAI Password> " AAIPASSWORD -read -e -i "${AAINAMEDQUERYUUID}" -p "Closed Loop AAI Named Query UUID> " AAINAMEDQUERYUUID -read -e -i "${AAIPATTERNMATCH}" -p "Closed Loop AAI Pattern Match (1 for vFW, otherwise vDNS)> " AAIPATTERNMATCH -read -e -i "${MSOURL}" -p "Closed Loop MSO URL> " MSOURL -read -e -i "${MSOUSERNAME}" -p "Closed Loop MSO Username> " MSOUSERNAME -read -e -i "${MSOPASSWORD}" -p "Closed Loop MSO Password> " MSOPASSWORD - -echo -echo - -if [ -z "${GROUPID}" ]; then echo "Aborting: Closed Loop Rules Maven Group Id not provided"; exit 1; fi -if [ -z "${ARTIFACTID}" ]; then echo "Aborting: Closed Loop Rules Maven Coordinates Artifact Id not provided"; exit 1; fi -if [ -z "${VERSION}" ]; then echo "Aborting: Closed Loop Rules Maven Coordinates Version not provided"; exit 1; fi -if [ -z "${PACKAGE}" ]; then echo "Aborting: Closed Loop Rules Package not provided"; exit 1; fi -if [ -z "${CLOSEDLOOPCONTROLNAME}" ]; then echo "Aborting: Closed Loop Template Control Name not provided"; exit 1; fi -if [ -z "${POLICYSCOPE}" ]; then echo "Aborting: Closed Loop Template Policy Scope not provided"; exit 1; fi -if [ -z "${POLICYNAME}" ]; then echo "Aborting: Closed Loop Template Policy Name not provided"; exit 1; fi -if [ -z "${POLICYVERSION}" ]; then echo "Aborting: Closed Loop Template Policy Version not provided"; exit 1; fi -if [ -z "${ACTOR}" ]; then echo "Aborting: Closed Loop Template Actor not provided"; exit 1; fi -if [ -z "${APPCTOPIC}" ]; then echo "Aborting: Closed Loop Template APP-C Recipe Topic not provided"; exit 1; fi -if [ -z "${APPCSERVERS}" ]; then echo "Aborting: Closed Loop Template APP-C UEB Servers not provided"; exit 1; fi -if [ -z "${NOTIFICATIONTOPIC}" ]; then echo "Aborting: Closed Loop Template Ruby Notification Topic not provided"; exit 1; fi -if [ -z "${NOTIFICATIONSERVERS}" ]; then echo "Aborting: Closed Loop Template Ruby UEB Servers not provided"; exit 1; fi -if [ -z "${DCAETOPIC}" ]; then echo "Aborting: Closed Loop Template DCAE DMAAP Topic not provided"; exit 1; fi -if [ -z "${DCAESERVERS}" ]; then echo "Aborting: Closed Loop Template DCAE DMAAP Servers not provided"; exit 1; fi -if [ -z "${AAIURL}" ]; then echo "Aborting: Closed Loop Template AAI URL not provided"; exit 1; fi -if [ -z "${AAIUSERNAME}" ]; then echo "Aborting: Closed Loop Template AAI Username not provided"; exit 1; fi -if [ -z "${AAIPASSWORD}" ]; then echo "Aborting: Closed Loop Template AAI Password not provided"; exit 1; fi -if [ -z "${AAINAMEDQUERYUUID}" ]; then echo "Aborting: Closed Loop Template AAI Named Query UUID not provided"; exit 1; fi -if [ -z "${AAIPATTERNMATCH}" ]; then echo "Aborting: Closed Loop Template AAPI Pattern Match not provided"; exit 1; fi -if [ -z "${MSOURL}" ]; then echo "Aborting: Closed Loop Template MSO URL not provided"; exit 1; fi -if [ -z "${MSOUSERNAME}" ]; then echo "Aborting: Closed Loop Template MSO Username not provided"; exit 1; fi -if [ -z "${MSOPASSWORD}" ]; then echo "Aborting: Closed Loop Template MSO Password not provided"; exit 1; fi - -if [ -z "${DCAEAPIKEY}" ]; then DCAEAPIKEY="NULL"; fi -if [ -z "${DCAEAPISECRET}" ]; then DCAEAPISECRET="NULL"; fi -if [ -z "${APPCAPIKEY}" ]; then APPCAPIKEY="NULL"; fi -if [ -z "${APPCAPISECRET}" ]; then APPCAPISECRET="NULL"; fi -if [ -z "${NOTIFICATIONAPIKEY}" ]; then NOTIFICATIONAPIKEY="NULL"; fi -if [ -z "${NOTIFICATIONAPISECRET}" ]; then NOTIFICATIONAPISECRET="NULL"; fi - -if [[ "$VERSION" == *-SNAPSHOT ]]; then - DEPENDENCIES_VERSION="1.1.0-SNAPSHOT" -else - DEPENDENCIES_VERSION="${VERSION}" -fi - -read -e -i "${DEPENDENCIES_VERSION}" -p "Closed Loop Model/PDP-D dependent version(s) (ie: 1.0.0-SNAPSHOT, 1607.31.1-1, or [1607.31.1,)) > " DEPENDENCIES_VERSION -if [ -z "${DEPENDENCIES_VERSION}" ]; then echo "Aborting: Closed Loop Model/PDP-D dependencies not provided"; exit 1; fi - -echo "---------------------------------------------------------------------------------------" -echo "Please review the entered Closed Loop Maven Coordinates and Policy Template Parameters:" -echo -echo "Installation in Local Maven Repository" -echo -echo "Closed Loop Rules Maven Artifact Generation: Group Id: ${GROUP_ID}" -echo "Closed Loop Rules Maven Artifact Generation: Artifact Id: ${ARTIFACTID}" -echo "Closed Loop Rules Maven Artifact Generation: Version: ${VERSION}" -echo "Closed Loop Rules Maven Artifact Generation: Package: ${PACKAGE}" -echo -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Control Name: ${CLOSEDLOOPCONTROLNAME}" -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Policy Scope: ${POLICYSCOPE}" -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Policy Name: ${POLICYNAME}" -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Policy Version: ${POLICYVERSION}" -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Actor: ${ACTOR}" -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Recipe: ${APPC}" -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Recipe Topic: ${APPCTOPIC}" -echo "Closed Loop Template Drools DRL Expansion: Closed Loop Notification Topic: ${NOTIFICATIONTOPIC}" -echo -echo "Closed Loop Controller Configuration: Rules: Group Id: ${GROUP_ID}" -echo "Closed Loop Controller Configuration: Rules: Artifact Id: ${ARTIFACTID}" -echo "Closed Loop Controller Configuration: Rules: Version: ${VERSION}" -echo -echo "Closed Loop Controller Configuration: DCAE UEB Topic: ${DCAETOPIC}" -echo "Closed Loop Controller Configuration: DCAE UEB Servers: ${DCAESERVERS}" -echo "Closed Loop Controller Configuration: DCAE UEB API Key: ${DCAEAPIKEY}" -echo "Closed Loop Controller Configuration: DCAE UEB API Secret: ${DCAEAPISECRET}" -echo -echo "Closed Loop Controller Configuration: APP-C UEB Topic: ${APPCTOPIC}" -echo "Closed Loop Controller Configuration: APP-C UEB Servers: ${APPCSERVERS}" -echo "Closed Loop Controller Configuration: APP-C UEB API Key: ${APPCAPIKEY}" -echo "Closed Loop Controller Configuration: APP-C UEB API Secret: ${APPCAPISECRET}" -echo -echo "Closed Loop Controller Configuration: NOTIFICATION Topic: ${NOTIFICATIONTOPIC}" -echo "Closed Loop Controller Configuration: NOTIFICATION UEB Servers: ${NOTIFICATIONSERVERS}" -echo "Closed Loop Controller Configuration: NOTIFICATION UEB API Key: ${NOTIFICATIONAPIKEY}" -echo "Closed Loop Controller Configuration: NOTIFICATION UEB API Secret: ${NOTIFICATIONAPISECRET}" -echo -echo "Closed Loop Controller Configuration: AAI URL: ${AAIURL}" -echo "Closed Loop Controller Configuration: AAI Username: ${AAIUSERNAME}" -echo "Closed Loop Controller Configuration: AAI Password: ${AAIPASSWORD}" -echo "Closed Loop Controller Configuration: AAI Named Query UUID: ${AAINAMEDQUERYUUID}" -echo "Closed Loop Controller Configuration: AAI Pattern Match: ${AAIPATTERNMATCH}" -echo -echo "Closed Loop Controller Configuration: MSO URL: ${MSOURL}" -echo "Closed Loop Controller Configuration: MSO Username: ${MSOUSERNAME}" -echo "Closed Loop Controller Configuration: MSO Password: ${MSOPASSWORD}" -echo -echo "Closed Loop Model/PDP-D dependent version(s): ${DEPENDENCIES_VERSION}" -echo "---------------------------------------------------------------------------------------" -echo - -HAPPY="Y" -read -e -i "${HAPPY}" -p "Are the previous parameters correct (Y/N)? " HAPPY -if [[ ${HAPPY} != "Y" ]]; then - exit 1 -fi - -echo -DIR_TMP="/tmp" -echo "The Closed Loop Source Rules will be installed at ${DIR_TMP}" -read -e -i "${DIR_TMP}" -p "Do you want to change the Source Rules install directory? " DIR_TMP - -if [ ! -w "${DIR_TMP}" ]; then - echo "Aborting. ${DIR_TMP} is not writable" - exit 1 -fi - -ARCHETYPE_GROUP_ID="org.onap.policy.drools-applications" -ARCHETYPE_ARTIFACT_ID="archetype-closedloop-demo-rules" - -if [ -d "${DIR_TMP}/${ARTIFACTID}/" ]; then - if [ "$(ls -A "${DIR_TMP}/${ARTIFACTID}"/)" ]; then - echo "${DIR_TMP} already contains a ${ARTIFACTID}/ directory, saving it to ${DIR_TMP}/${ARTIFACTID}.arch.bak/" - if [ -d "${DIR_TMP}/${ARTIFACTID}.arch.bak"/ ]; then - ( - echo "${DIR_TMP}/${ARTIFACTID}.arch.bak/ also exists, deleting it .." - cd "${DIR_TMP}"/ - rm -fr "${ARTIFACTID}.arch.bak" - ) - fi - /bin/mv --force "${DIR_TMP}/${ARTIFACTID}/" "${DIR_TMP}/${ARTIFACTID}.arch.bak" - if [ "${?}" -ne 0 ]; then - echo - echo - echo "Aborting: ${DIR_TMP}/${ARTIFACTID}/ cannot be moved" - exit 1 - fi - else - ( cd "${DIR_TMP}/" ; rmdir "${DIR_TMP}/${ARTIFACTID}/" ) - fi -fi - -CREATEARTIFACT="Y" -read -e -i "${CREATEARTIFACT}" -p "Create Maven Artifact (Y/N)? " CREATEARTIFACT -if [[ ${CREATEARTIFACT} != "Y" ]]; then - exit 1 -fi - -( -cd "${DIR_TMP}" - -"$M2_HOME"/bin/mvn archetype:generate \ - -B \ - -DarchetypeCatalog=local \ - -DarchetypeGroupId="${ARCHETYPE_GROUP_ID}" \ - -DarchetypeArtifactId="${ARCHETYPE_ARTIFACT_ID}" \ - -DarchetypeVersion="${VERSION}" \ - -DgroupId="${GROUP_ID}" \ - -DartifactId="${ARTIFACTID}" \ - -Dversion="${VERSION}" \ - -Dpackage="${PACKAGE}" \ - -DclosedLoopControlName="${CLOSEDLOOPCONTROLNAME}" \ - -DpolicyScope="${POLICYSCOPE}" \ - -DpolicyName="${POLICYNAME}" \ - -DpolicyVersion="${POLICYVERSION}" \ - -Dactor="${ACTOR}" \ - -DappcTopic="${APPCTOPIC}" \ - -DappcServers="${APPCSERVERS}" \ - -DappcApiKey="${APPCAPIKEY}" \ - -DappcApiSecret="${APPCAPISECRET}" \ - -DnotificationTopic="${NOTIFICATIONTOPIC}" \ - -DnotificationServers="${NOTIFICATIONSERVERS}" \ - -DnotificationApiKey="${NOTIFICATIONAPIKEY}" \ - -DnotificationApiSecret="${NOTIFICATIONAPISECRET}" \ - -DdcaeTopic="${DCAETOPIC}" \ - -DdcaeServers="${DCAESERVERS}" \ - -DdcaeApiKey="${DCAEAPIKEY}" \ - -DdcaeApiSecret="${DCAEAPISECRET}" \ - -DaaiURL="${AAIURL}" \ - -DaaiUsername="${AAIUSERNAME}" \ - -DaaiPassword="${AAIPASSWORD}" \ - -DaaiNamedQueryUUID="${AAINAMEDQUERYUUID}" \ - -DaaiPatternMatch="${AAIPATTERNMATCH}" \ - -DmsoURL="${MSOURL}" \ - -DmsoUsername="${MSOUSERNAME}" \ - -DmsoPassword="${MSOPASSWORD}" \ - -DdependenciesVersion="${DEPENDENCIES_VERSION}" - -if [ "${?}" -ne 0 ]; then - echo - echo - echo "Aborting: ${ARTIFACTID} has not been successfully generated" - exit 1 -fi - -echo - -cd "${DIR_TMP}/${ARTIFACTID}"/ - -/bin/mv src/main/config/* . - -/bin/sed -i -e "/apiKey=NULL$/d" *-controller.properties -/bin/sed -i -e "/apiSecret=NULL$/d" *-controller.properties - -/bin/sed -i -e "/apiKey.*:.*\"NULL\",/d" *-controller.rest.json -/bin/sed -i -e "/apiSecret.*:.*\"NULL\",/d" *-controller.rest.json - -echo "Closed Loop Rules from templates have been successfully created under ${DIR_TMP}/${ARTIFACTID}/" - -INSTALLREPO="Y" -read -e -i "${INSTALLREPO}" -p "Do you want to deploy ${ARTIFACTID} rules into maven repository (Y/N)? " INSTALLREPO -if [[ ${INSTALLREPO} != "Y" ]]; then - exit 1 -fi - -echo -echo "generating deployable ${ARTIFACTID} maven artifact .." - -"$M2_HOME"/bin/mvn install - -if [ "${?}" -ne 0 ]; then - echo - echo - echo "Aborting: ${ARTIFACTID} deployable jar cannot be generated" - exit 1 -fi - - -echo -echo "${ARTIFACTID} has been successfully installed in user's (${USER}) local repository" -echo "Find configuration files at ${DIR_TMP}/${ARTIFACTID}/" -) diff --git a/controlloop/common/packages/basex/src/files/config/vDNS-controller.properties b/controlloop/common/packages/basex/src/files/config/vDNS-controller.properties deleted file mode 100644 index 7da128f29..000000000 --- a/controlloop/common/packages/basex/src/files/config/vDNS-controller.properties +++ /dev/null @@ -1,55 +0,0 @@ -### -# ============LICENSE_START======================================================= -# PDP-D APPS Base Package -# ================================================================================ -# Copyright (C) 2017 AT&T 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. -# ============LICENSE_END========================================================= -### - -controller.name=vDNS - -ueb.source.topics=DCAE-CL-EVENT,APPC-CL - -ueb.source.topics.DCAE-CL-EVENT.servers=vm1.mr.simpledemo.openecomp.org -ueb.source.topics.DCAE-CL-EVENT.apiKey= -ueb.source.topics.DCAE-CL-EVENT.apiSecret= -ueb.source.topics.DCAE-CL-EVENT.events=org.onap.policy.controlloop.VirtualControlLoopEvent -ueb.source.topics.DCAE-CL-EVENT.events.org.onap.policy.controlloop.VirtualControlLoopEvent.filter=closedLoopEventStatus\=.*,closedLoopControlName\=.*DNS.* -ueb.source.topics.DCAE-CL-EVENT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty - -ueb.source.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org -ueb.source.topics.APPC-CL.apiKey= -ueb.source.topics.APPC-CL.apiSecret= -ueb.source.topics.APPC-CL.events=org.onap.policy.appc.Response -ueb.source.topics.APPC-CL.events.org.onap.policy.appc.Response.filter=CommonHeader=.*,Status=.* -ueb.source.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty - -ueb.sink.topics=APPC-CL,POLICY-CL-MGT - -ueb.sink.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org -ueb.sink.topics.APPC-CL.apiKey= -ueb.sink.topics.APPC-CL.apiSecret= -ueb.sink.topics.APPC-CL.events=org.onap.policy.appc.Request -ueb.sink.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty - -ueb.sink.topics.POLICY-CL-MGT.servers=vm1.mr.simpledemo.openecomp.org -ueb.sink.topics.POLICY-CL-MGT.apiKey= -ueb.sink.topics.POLICY-CL-MGT.apiSecret= -ueb.sink.topics.POLICY-CL-MGT.events=org.onap.policy.controlloop.VirtualControlLoopNotification -ueb.sink.topics.POLICY-CL-MGT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty - -rules.groupId= -rules.artifactId= -rules.version= diff --git a/controlloop/common/packages/basex/src/files/config/vFW-controller.properties b/controlloop/common/packages/basex/src/files/config/vFW-controller.properties deleted file mode 100644 index 8b8587504..000000000 --- a/controlloop/common/packages/basex/src/files/config/vFW-controller.properties +++ /dev/null @@ -1,55 +0,0 @@ -### -# ============LICENSE_START======================================================= -# PDP-D APPS Base Package -# ================================================================================ -# Copyright (C) 2017 AT&T 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. -# ============LICENSE_END========================================================= -### - -controller.name=vFW - -ueb.source.topics=DCAE-CL-EVENT,APPC-CL - -ueb.source.topics.DCAE-CL-EVENT.servers=vm1.mr.simpledemo.openecomp.org -ueb.source.topics.DCAE-CL-EVENT.apiKey= -ueb.source.topics.DCAE-CL-EVENT.apiSecret= -ueb.source.topics.DCAE-CL-EVENT.events=org.onap.policy.controlloop.VirtualControlLoopEvent -ueb.source.topics.DCAE-CL-EVENT.events.org.onap.policy.controlloop.VirtualControlLoopEvent.filter=closedLoopEventStatus\=.*,closedLoopControlName\=.*FRWL.* -ueb.source.topics.DCAE-CL-EVENT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty - -ueb.source.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org -ueb.source.topics.APPC-CL.apiKey= -ueb.source.topics.APPC-CL.apiSecret= -ueb.source.topics.APPC-CL.events=org.onap.policy.appc.Response -ueb.source.topics.APPC-CL.events.org.onap.policy.appc.Response.filter=CommonHeader=.*,Status=.* -ueb.source.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty - -ueb.sink.topics=APPC-CL,POLICY-CL-MGT - -ueb.sink.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org -ueb.sink.topics.APPC-CL.apiKey= -ueb.sink.topics.APPC-CL.apiSecret= -ueb.sink.topics.APPC-CL.events=org.onap.policy.appc.Request -ueb.sink.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty - -ueb.sink.topics.POLICY-CL-MGT.servers=vm1.mr.simpledemo.openecomp.org -ueb.sink.topics.POLICY-CL-MGT.apiKey= -ueb.sink.topics.POLICY-CL-MGT.apiSecret= -ueb.sink.topics.POLICY-CL-MGT.events=org.onap.policy.controlloop.VirtualControlLoopNotification -ueb.sink.topics.POLICY-CL-MGT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty - -rules.groupId= -rules.artifactId= -rules.version= diff --git a/controlloop/common/packages/pom.xml b/controlloop/common/packages/pom.xml deleted file mode 100644 index ea54a3317..000000000 --- a/controlloop/common/packages/pom.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - 4.0.0 - - - org.onap.policy.drools-applications - common - 1.1.0-SNAPSHOT - - - packages - pom - - PDP-D Application Installation Packages - PDP-D Installation - - - basex - artifacts - apps - - diff --git a/controlloop/common/pom.xml b/controlloop/common/pom.xml index 76f788a38..f3975b958 100644 --- a/controlloop/common/pom.xml +++ b/controlloop/common/pom.xml @@ -37,7 +37,6 @@ eventmanager guard model-impl - packages policy-yaml diff --git a/controlloop/packages/apps/pom.xml b/controlloop/packages/apps/pom.xml new file mode 100644 index 000000000..f591bdc38 --- /dev/null +++ b/controlloop/packages/apps/pom.xml @@ -0,0 +1,77 @@ + + + + + 4.0.0 + + + org.onap.policy.drools-applications + packages + 1.1.0-SNAPSHOT + + + apps + pom + + PDP-D APPS Installation Package + PDP-D APPS Installation Package + + + + + maven-assembly-plugin + + + + single + + package + + + src/assembly/zip.xml + + false + + + + + + + + + + + org.onap.policy.drools-applications + basex + ${project.version} + tar.gz + + + org.onap.policy.drools-applications + artifacts + ${project.version} + zip + + + + + diff --git a/controlloop/packages/apps/src/assembly/zip.xml b/controlloop/packages/apps/src/assembly/zip.xml new file mode 100644 index 000000000..f3392e130 --- /dev/null +++ b/controlloop/packages/apps/src/assembly/zip.xml @@ -0,0 +1,40 @@ + + + + zipfile + + zip + + false + + + src/files + . + 755 + + + + + false + + + + diff --git a/controlloop/packages/apps/src/files/README.apps.txt b/controlloop/packages/apps/src/files/README.apps.txt new file mode 100644 index 000000000..aab021885 --- /dev/null +++ b/controlloop/packages/apps/src/files/README.apps.txt @@ -0,0 +1,8 @@ + +The PDP-D apps installation package contains: + +1. artifacts-.zip contains models and other jars to support PDP-D applications. +2. basex-.tar.gz contains scripts and additional files to support the PDP-D models. + +The apps-.zip must be placed in the same directory as the installation package +before installation before installation is attempted. diff --git a/controlloop/packages/artifacts/pom.xml b/controlloop/packages/artifacts/pom.xml new file mode 100644 index 000000000..cce85c710 --- /dev/null +++ b/controlloop/packages/artifacts/pom.xml @@ -0,0 +1,154 @@ + + + + + 4.0.0 + + + org.onap.policy.drools-applications + packages + 1.1.0-SNAPSHOT + + + artifacts + pom + + Artifacts for PDP-D Applications + PDP-D models, rules and tooling + + + + + maven-assembly-plugin + + + + single + + package + + + src/assembly/zip.xml + + false + + + + + + + + + + + org.onap.policy.drools-applications + drools-pdp-apps + ${project.version} + pom + + + org.onap.policy.drools-applications + controlloop + ${project.version} + pom + + + org.onap.policy.drools-applications + common + ${project.version} + pom + + + org.onap.policy.drools-applications + model-impl + ${project.version} + pom + + + + org.onap.policy.drools-applications + events + ${project.version} + jar + + + org.onap.policy.drools-applications + appc + ${project.version} + jar + + + org.onap.policy.drools-applications + aai + ${project.version} + jar + + + org.onap.policy.drools-applications + mso + ${project.version} + jar + + + org.onap.policy.drools-applications + trafficgenerator + ${project.version} + jar + + + org.onap.policy.drools-applications + eventmanager + ${project.version} + jar + + + org.onap.policy.drools-applications + guard + ${project.version} + jar + + + org.onap.policy.drools-applications + policy-yaml + ${project.version} + jar + + + org.onap.policy.drools-applications + demo + ${project.version} + jar + + + org.onap.policy.drools-applications + template.demo + ${project.version} + jar + + + org.onap.policy.drools-applications + archetype-closedloop-demo-rules + ${project.version} + jar + + + diff --git a/controlloop/packages/artifacts/src/assembly/zip.xml b/controlloop/packages/artifacts/src/assembly/zip.xml new file mode 100644 index 000000000..e3f018d26 --- /dev/null +++ b/controlloop/packages/artifacts/src/assembly/zip.xml @@ -0,0 +1,33 @@ + + + + zipfile + + zip + + false + + + artifacts + false + + + diff --git a/controlloop/packages/basex/pom.xml b/controlloop/packages/basex/pom.xml new file mode 100644 index 000000000..7e2014b86 --- /dev/null +++ b/controlloop/packages/basex/pom.xml @@ -0,0 +1,61 @@ + + + + + 4.0.0 + + + org.onap.policy.drools-applications + packages + 1.1.0-SNAPSHOT + + + basex + pom + + PDP-D APPS Base Package + PDP-D APPS Packaging + + + + + maven-assembly-plugin + + + + single + + package + + + src/assembly/zip.xml + + false + + + + + + + + + diff --git a/controlloop/packages/basex/src/assembly/zip.xml b/controlloop/packages/basex/src/assembly/zip.xml new file mode 100644 index 000000000..a33f1b7e5 --- /dev/null +++ b/controlloop/packages/basex/src/assembly/zip.xml @@ -0,0 +1,36 @@ + + + + basex + + tar.gz + + false + + + src/files + . + 700 + 700 + + + + diff --git a/controlloop/packages/basex/src/files/bin/create-closed-loop-demo.sh b/controlloop/packages/basex/src/files/bin/create-closed-loop-demo.sh new file mode 100644 index 000000000..be9801294 --- /dev/null +++ b/controlloop/packages/basex/src/files/bin/create-closed-loop-demo.sh @@ -0,0 +1,315 @@ +#! /bin/bash + +### +# ============LICENSE_START======================================================= +# PDP-D APPS Base Package +# ================================================================================ +# Copyright (C) 2017 AT&T 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. +# ============LICENSE_END========================================================= +### + +# Interactive script to generate a closed loop demo rules artifact +# for testing purposes of standalone PDP-D + +echo "Closed Loop Demo Creator for standalone PDP-D" +echo "----------------------------------------------" +echo + +GROUPID="org.onap.policy.demo.rules" +ARTIFACTID="closed-loop-demo-rules" +VERSION="1.1.0" +PACKAGE="org.onap.policy.demo.rules" +CLOSEDLOOPCONTROLNAME="CL-FRWL-LOW-TRAFFIC-SIG-d925ed73-8231-4d02-9545-db4e101f88f8" +POLICYSCOPE="service=test;resource=FRWL;type=configuration" +POLICYNAME="FirewallDemo" +POLICYVERSION="v0.0.1" +ACTOR="APPC" +APPCTOPIC="APPC-CL" +APPCSERVERS="vm1.mr.simpledemo.openecomp.org" +APPCAPIKEY= +APPCAPISECRET= +NOTIFICATIONTOPIC="POLICY-CL-MGT" +NOTIFICATIONSERVERS="vm1.mr.simpledemo.openecomp.org" +NOTIFICATIONAPIKEY= +NOTIFICATIONAPISECRET= +DCAETOPIC="DCAE-CL-EVENT" +DCAESERVERS="vm1.mr.simpledemo.openecomp.org" +DCAEAPIKEY= +DCAEAPISECRET= +AAIURL="http://localhost:7676/aai/test" +AAIUSERNAME="policy" +AAIPASSWORD="policy" +AAINAMEDQUERYUUID=d925ed73-8231-4d02-9545-db4e101fffff +AAIPATTERNMATCH=1 +MSOURL="http://localhost:7677/mso/test" +MSOUSERNAME="policy" +MSOPASSWORD="policy" + +read -e -i "${GROUPID}" -p "Closed Loop Rules Maven Group Id> " GROUP_ID +read -e -i "${ARTIFACTID}" -p "Closed Loop Rules Maven Coordinates Artifact Id> " ARTIFACTID +read -e -i "${VERSION}" -p "Closed Loop Rules Maven Coordinates Version> " VERSION +read -e -i "${PACKAGE}" -p "Closed Loop Rules Package> " PACKAGE +read -e -i "${CLOSEDLOOPCONTROLNAME}" -p "Closed Loop Template Control Name> " CLOSEDLOOPCONTROLNAME +read -e -i "${POLICYSCOPE}" -p "Closed Loop Policy Scope> " POLICYSCOPE +read -e -i "${POLICYNAME}" -p "Closed Loop Policy Name> " POLICYNAME +read -e -i "${POLICYVERSION}" -p "Closed Loop Policy Version> " POLICYVERSION +read -e -i "${ACTOR}" -p "Closed Loop Actor ('APPC' or 'MSO')> " ACTOR +read -e -i "${APPCTOPIC}" -p "Closed Loop APP-C Recipe Topic> " APPCTOPIC +read -e -i "${APPCSERVERS}" -p "Closed Loop APP-C UEB Servers for ${APPCTOPIC} topic> " APPCSERVERS +read -e -i "${APPCAPIKEY}" -p "Closed Loop APP-C UEB API Key for ${APPCTOPIC} topic> " APPCAPIKEY +read -e -i "${APPCAPISECRET}" -p "Closed Loop APP-C UEB API Secret for ${APPCTOPIC} topic> " APPCAPISECRET +read -e -i "${NOTIFICATIONTOPIC}" -p "Closed Loop Ruby Notification Topic> " NOTIFICATIONTOPIC +read -e -i "${NOTIFICATIONSERVERS}" -p "Closed Loop Ruby UEB Servers for ${NOTIFICATIONTOPIC} topic> " NOTIFICATIONSERVERS +read -e -i "${NOTIFICATIONAPIKEY}" -p "Closed Loop Ruby UEB API Key ${NOTIFICATIONTOPIC} topic> " NOTIFICATIONAPIKEY +read -e -i "${NOTIFICATIONAPISECRET}" -p "Closed Loop Ruby UEB API Secret ${NOTIFICATIONTOPIC} topic> " NOTIFICATIONAPISECRET +read -e -i "${DCAETOPIC}" -p "Closed Loop DCAE Topic> " DCAETOPIC +read -e -i "${DCAESERVERS}" -p "Closed Loop DCAE UEB Servers> " DCAESERVERS +read -e -i "${DCAEAPIKEY}" -p "Closed Loop DCAE UEB API Key for ${DCAETOPIC} topic> " DCAEAPIKEY +read -e -i "${DCAEAPISECRET}" -p "Closed Loop DCAE UEB API Secret for ${DCAETOPIC} topic> " DCAEAPISECRET +read -e -i "${AAIURL}" -p "Closed Loop AAI URL> " AAIURL +read -e -i "${AAIUSERNAME}" -p "Closed Loop AAI Username> " AAIUSERNAME +read -e -i "${AAIPASSWORD}" -p "Closed Loop AAI Password> " AAIPASSWORD +read -e -i "${AAINAMEDQUERYUUID}" -p "Closed Loop AAI Named Query UUID> " AAINAMEDQUERYUUID +read -e -i "${AAIPATTERNMATCH}" -p "Closed Loop AAI Pattern Match (1 for vFW, otherwise vDNS)> " AAIPATTERNMATCH +read -e -i "${MSOURL}" -p "Closed Loop MSO URL> " MSOURL +read -e -i "${MSOUSERNAME}" -p "Closed Loop MSO Username> " MSOUSERNAME +read -e -i "${MSOPASSWORD}" -p "Closed Loop MSO Password> " MSOPASSWORD + +echo +echo + +if [ -z "${GROUPID}" ]; then echo "Aborting: Closed Loop Rules Maven Group Id not provided"; exit 1; fi +if [ -z "${ARTIFACTID}" ]; then echo "Aborting: Closed Loop Rules Maven Coordinates Artifact Id not provided"; exit 1; fi +if [ -z "${VERSION}" ]; then echo "Aborting: Closed Loop Rules Maven Coordinates Version not provided"; exit 1; fi +if [ -z "${PACKAGE}" ]; then echo "Aborting: Closed Loop Rules Package not provided"; exit 1; fi +if [ -z "${CLOSEDLOOPCONTROLNAME}" ]; then echo "Aborting: Closed Loop Template Control Name not provided"; exit 1; fi +if [ -z "${POLICYSCOPE}" ]; then echo "Aborting: Closed Loop Template Policy Scope not provided"; exit 1; fi +if [ -z "${POLICYNAME}" ]; then echo "Aborting: Closed Loop Template Policy Name not provided"; exit 1; fi +if [ -z "${POLICYVERSION}" ]; then echo "Aborting: Closed Loop Template Policy Version not provided"; exit 1; fi +if [ -z "${ACTOR}" ]; then echo "Aborting: Closed Loop Template Actor not provided"; exit 1; fi +if [ -z "${APPCTOPIC}" ]; then echo "Aborting: Closed Loop Template APP-C Recipe Topic not provided"; exit 1; fi +if [ -z "${APPCSERVERS}" ]; then echo "Aborting: Closed Loop Template APP-C UEB Servers not provided"; exit 1; fi +if [ -z "${NOTIFICATIONTOPIC}" ]; then echo "Aborting: Closed Loop Template Ruby Notification Topic not provided"; exit 1; fi +if [ -z "${NOTIFICATIONSERVERS}" ]; then echo "Aborting: Closed Loop Template Ruby UEB Servers not provided"; exit 1; fi +if [ -z "${DCAETOPIC}" ]; then echo "Aborting: Closed Loop Template DCAE DMAAP Topic not provided"; exit 1; fi +if [ -z "${DCAESERVERS}" ]; then echo "Aborting: Closed Loop Template DCAE DMAAP Servers not provided"; exit 1; fi +if [ -z "${AAIURL}" ]; then echo "Aborting: Closed Loop Template AAI URL not provided"; exit 1; fi +if [ -z "${AAIUSERNAME}" ]; then echo "Aborting: Closed Loop Template AAI Username not provided"; exit 1; fi +if [ -z "${AAIPASSWORD}" ]; then echo "Aborting: Closed Loop Template AAI Password not provided"; exit 1; fi +if [ -z "${AAINAMEDQUERYUUID}" ]; then echo "Aborting: Closed Loop Template AAI Named Query UUID not provided"; exit 1; fi +if [ -z "${AAIPATTERNMATCH}" ]; then echo "Aborting: Closed Loop Template AAPI Pattern Match not provided"; exit 1; fi +if [ -z "${MSOURL}" ]; then echo "Aborting: Closed Loop Template MSO URL not provided"; exit 1; fi +if [ -z "${MSOUSERNAME}" ]; then echo "Aborting: Closed Loop Template MSO Username not provided"; exit 1; fi +if [ -z "${MSOPASSWORD}" ]; then echo "Aborting: Closed Loop Template MSO Password not provided"; exit 1; fi + +if [ -z "${DCAEAPIKEY}" ]; then DCAEAPIKEY="NULL"; fi +if [ -z "${DCAEAPISECRET}" ]; then DCAEAPISECRET="NULL"; fi +if [ -z "${APPCAPIKEY}" ]; then APPCAPIKEY="NULL"; fi +if [ -z "${APPCAPISECRET}" ]; then APPCAPISECRET="NULL"; fi +if [ -z "${NOTIFICATIONAPIKEY}" ]; then NOTIFICATIONAPIKEY="NULL"; fi +if [ -z "${NOTIFICATIONAPISECRET}" ]; then NOTIFICATIONAPISECRET="NULL"; fi + +if [[ "$VERSION" == *-SNAPSHOT ]]; then + DEPENDENCIES_VERSION="1.1.0-SNAPSHOT" +else + DEPENDENCIES_VERSION="${VERSION}" +fi + +read -e -i "${DEPENDENCIES_VERSION}" -p "Closed Loop Model/PDP-D dependent version(s) (ie: 1.0.0-SNAPSHOT, 1607.31.1-1, or [1607.31.1,)) > " DEPENDENCIES_VERSION +if [ -z "${DEPENDENCIES_VERSION}" ]; then echo "Aborting: Closed Loop Model/PDP-D dependencies not provided"; exit 1; fi + +echo "---------------------------------------------------------------------------------------" +echo "Please review the entered Closed Loop Maven Coordinates and Policy Template Parameters:" +echo +echo "Installation in Local Maven Repository" +echo +echo "Closed Loop Rules Maven Artifact Generation: Group Id: ${GROUP_ID}" +echo "Closed Loop Rules Maven Artifact Generation: Artifact Id: ${ARTIFACTID}" +echo "Closed Loop Rules Maven Artifact Generation: Version: ${VERSION}" +echo "Closed Loop Rules Maven Artifact Generation: Package: ${PACKAGE}" +echo +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Control Name: ${CLOSEDLOOPCONTROLNAME}" +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Policy Scope: ${POLICYSCOPE}" +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Policy Name: ${POLICYNAME}" +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Policy Version: ${POLICYVERSION}" +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Actor: ${ACTOR}" +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Recipe: ${APPC}" +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Recipe Topic: ${APPCTOPIC}" +echo "Closed Loop Template Drools DRL Expansion: Closed Loop Notification Topic: ${NOTIFICATIONTOPIC}" +echo +echo "Closed Loop Controller Configuration: Rules: Group Id: ${GROUP_ID}" +echo "Closed Loop Controller Configuration: Rules: Artifact Id: ${ARTIFACTID}" +echo "Closed Loop Controller Configuration: Rules: Version: ${VERSION}" +echo +echo "Closed Loop Controller Configuration: DCAE UEB Topic: ${DCAETOPIC}" +echo "Closed Loop Controller Configuration: DCAE UEB Servers: ${DCAESERVERS}" +echo "Closed Loop Controller Configuration: DCAE UEB API Key: ${DCAEAPIKEY}" +echo "Closed Loop Controller Configuration: DCAE UEB API Secret: ${DCAEAPISECRET}" +echo +echo "Closed Loop Controller Configuration: APP-C UEB Topic: ${APPCTOPIC}" +echo "Closed Loop Controller Configuration: APP-C UEB Servers: ${APPCSERVERS}" +echo "Closed Loop Controller Configuration: APP-C UEB API Key: ${APPCAPIKEY}" +echo "Closed Loop Controller Configuration: APP-C UEB API Secret: ${APPCAPISECRET}" +echo +echo "Closed Loop Controller Configuration: NOTIFICATION Topic: ${NOTIFICATIONTOPIC}" +echo "Closed Loop Controller Configuration: NOTIFICATION UEB Servers: ${NOTIFICATIONSERVERS}" +echo "Closed Loop Controller Configuration: NOTIFICATION UEB API Key: ${NOTIFICATIONAPIKEY}" +echo "Closed Loop Controller Configuration: NOTIFICATION UEB API Secret: ${NOTIFICATIONAPISECRET}" +echo +echo "Closed Loop Controller Configuration: AAI URL: ${AAIURL}" +echo "Closed Loop Controller Configuration: AAI Username: ${AAIUSERNAME}" +echo "Closed Loop Controller Configuration: AAI Password: ${AAIPASSWORD}" +echo "Closed Loop Controller Configuration: AAI Named Query UUID: ${AAINAMEDQUERYUUID}" +echo "Closed Loop Controller Configuration: AAI Pattern Match: ${AAIPATTERNMATCH}" +echo +echo "Closed Loop Controller Configuration: MSO URL: ${MSOURL}" +echo "Closed Loop Controller Configuration: MSO Username: ${MSOUSERNAME}" +echo "Closed Loop Controller Configuration: MSO Password: ${MSOPASSWORD}" +echo +echo "Closed Loop Model/PDP-D dependent version(s): ${DEPENDENCIES_VERSION}" +echo "---------------------------------------------------------------------------------------" +echo + +HAPPY="Y" +read -e -i "${HAPPY}" -p "Are the previous parameters correct (Y/N)? " HAPPY +if [[ ${HAPPY} != "Y" ]]; then + exit 1 +fi + +echo +DIR_TMP="/tmp" +echo "The Closed Loop Source Rules will be installed at ${DIR_TMP}" +read -e -i "${DIR_TMP}" -p "Do you want to change the Source Rules install directory? " DIR_TMP + +if [ ! -w "${DIR_TMP}" ]; then + echo "Aborting. ${DIR_TMP} is not writable" + exit 1 +fi + +ARCHETYPE_GROUP_ID="org.onap.policy.drools-applications" +ARCHETYPE_ARTIFACT_ID="archetype-closedloop-demo-rules" + +if [ -d "${DIR_TMP}/${ARTIFACTID}/" ]; then + if [ "$(ls -A "${DIR_TMP}/${ARTIFACTID}"/)" ]; then + echo "${DIR_TMP} already contains a ${ARTIFACTID}/ directory, saving it to ${DIR_TMP}/${ARTIFACTID}.arch.bak/" + if [ -d "${DIR_TMP}/${ARTIFACTID}.arch.bak"/ ]; then + ( + echo "${DIR_TMP}/${ARTIFACTID}.arch.bak/ also exists, deleting it .." + cd "${DIR_TMP}"/ + rm -fr "${ARTIFACTID}.arch.bak" + ) + fi + /bin/mv --force "${DIR_TMP}/${ARTIFACTID}/" "${DIR_TMP}/${ARTIFACTID}.arch.bak" + if [ "${?}" -ne 0 ]; then + echo + echo + echo "Aborting: ${DIR_TMP}/${ARTIFACTID}/ cannot be moved" + exit 1 + fi + else + ( cd "${DIR_TMP}/" ; rmdir "${DIR_TMP}/${ARTIFACTID}/" ) + fi +fi + +CREATEARTIFACT="Y" +read -e -i "${CREATEARTIFACT}" -p "Create Maven Artifact (Y/N)? " CREATEARTIFACT +if [[ ${CREATEARTIFACT} != "Y" ]]; then + exit 1 +fi + +( +cd "${DIR_TMP}" + +mvn archetype:generate \ + -B \ + -DarchetypeCatalog=local \ + -DarchetypeGroupId="${ARCHETYPE_GROUP_ID}" \ + -DarchetypeArtifactId="${ARCHETYPE_ARTIFACT_ID}" \ + -DarchetypeVersion="${VERSION}" \ + -DgroupId="${GROUP_ID}" \ + -DartifactId="${ARTIFACTID}" \ + -Dversion="${VERSION}" \ + -Dpackage="${PACKAGE}" \ + -DclosedLoopControlName="${CLOSEDLOOPCONTROLNAME}" \ + -DpolicyScope="${POLICYSCOPE}" \ + -DpolicyName="${POLICYNAME}" \ + -DpolicyVersion="${POLICYVERSION}" \ + -Dactor="${ACTOR}" \ + -DappcTopic="${APPCTOPIC}" \ + -DappcServers="${APPCSERVERS}" \ + -DappcApiKey="${APPCAPIKEY}" \ + -DappcApiSecret="${APPCAPISECRET}" \ + -DnotificationTopic="${NOTIFICATIONTOPIC}" \ + -DnotificationServers="${NOTIFICATIONSERVERS}" \ + -DnotificationApiKey="${NOTIFICATIONAPIKEY}" \ + -DnotificationApiSecret="${NOTIFICATIONAPISECRET}" \ + -DdcaeTopic="${DCAETOPIC}" \ + -DdcaeServers="${DCAESERVERS}" \ + -DdcaeApiKey="${DCAEAPIKEY}" \ + -DdcaeApiSecret="${DCAEAPISECRET}" \ + -DaaiURL="${AAIURL}" \ + -DaaiUsername="${AAIUSERNAME}" \ + -DaaiPassword="${AAIPASSWORD}" \ + -DaaiNamedQueryUUID="${AAINAMEDQUERYUUID}" \ + -DaaiPatternMatch="${AAIPATTERNMATCH}" \ + -DmsoURL="${MSOURL}" \ + -DmsoUsername="${MSOUSERNAME}" \ + -DmsoPassword="${MSOPASSWORD}" \ + -DdependenciesVersion="${DEPENDENCIES_VERSION}" + +if [ "${?}" -ne 0 ]; then + echo + echo + echo "Aborting: ${ARTIFACTID} has not been successfully generated" + exit 1 +fi + +echo + +cd "${DIR_TMP}/${ARTIFACTID}"/ + +/bin/mv src/main/config/* . + +/bin/sed -i -e "/apiKey=NULL$/d" *-controller.properties +/bin/sed -i -e "/apiSecret=NULL$/d" *-controller.properties + +/bin/sed -i -e "/apiKey.*:.*\"NULL\",/d" *-controller.rest.json +/bin/sed -i -e "/apiSecret.*:.*\"NULL\",/d" *-controller.rest.json + +echo "Closed Loop Rules from templates have been successfully created under ${DIR_TMP}/${ARTIFACTID}/" + +INSTALLREPO="Y" +read -e -i "${INSTALLREPO}" -p "Do you want to deploy ${ARTIFACTID} rules into maven repository (Y/N)? " INSTALLREPO +if [[ ${INSTALLREPO} != "Y" ]]; then + exit 1 +fi + +echo +echo "generating deployable ${ARTIFACTID} maven artifact .." + +mvn install + +if [ "${?}" -ne 0 ]; then + echo + echo + echo "Aborting: ${ARTIFACTID} deployable jar cannot be generated" + exit 1 +fi + + +echo +echo "${ARTIFACTID} has been successfully installed in user's (${USER}) local repository" +echo "Find configuration files at ${DIR_TMP}/${ARTIFACTID}/" +) diff --git a/controlloop/packages/basex/src/files/config/vDNS-controller.properties b/controlloop/packages/basex/src/files/config/vDNS-controller.properties new file mode 100644 index 000000000..7da128f29 --- /dev/null +++ b/controlloop/packages/basex/src/files/config/vDNS-controller.properties @@ -0,0 +1,55 @@ +### +# ============LICENSE_START======================================================= +# PDP-D APPS Base Package +# ================================================================================ +# Copyright (C) 2017 AT&T 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. +# ============LICENSE_END========================================================= +### + +controller.name=vDNS + +ueb.source.topics=DCAE-CL-EVENT,APPC-CL + +ueb.source.topics.DCAE-CL-EVENT.servers=vm1.mr.simpledemo.openecomp.org +ueb.source.topics.DCAE-CL-EVENT.apiKey= +ueb.source.topics.DCAE-CL-EVENT.apiSecret= +ueb.source.topics.DCAE-CL-EVENT.events=org.onap.policy.controlloop.VirtualControlLoopEvent +ueb.source.topics.DCAE-CL-EVENT.events.org.onap.policy.controlloop.VirtualControlLoopEvent.filter=closedLoopEventStatus\=.*,closedLoopControlName\=.*DNS.* +ueb.source.topics.DCAE-CL-EVENT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty + +ueb.source.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org +ueb.source.topics.APPC-CL.apiKey= +ueb.source.topics.APPC-CL.apiSecret= +ueb.source.topics.APPC-CL.events=org.onap.policy.appc.Response +ueb.source.topics.APPC-CL.events.org.onap.policy.appc.Response.filter=CommonHeader=.*,Status=.* +ueb.source.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty + +ueb.sink.topics=APPC-CL,POLICY-CL-MGT + +ueb.sink.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org +ueb.sink.topics.APPC-CL.apiKey= +ueb.sink.topics.APPC-CL.apiSecret= +ueb.sink.topics.APPC-CL.events=org.onap.policy.appc.Request +ueb.sink.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty + +ueb.sink.topics.POLICY-CL-MGT.servers=vm1.mr.simpledemo.openecomp.org +ueb.sink.topics.POLICY-CL-MGT.apiKey= +ueb.sink.topics.POLICY-CL-MGT.apiSecret= +ueb.sink.topics.POLICY-CL-MGT.events=org.onap.policy.controlloop.VirtualControlLoopNotification +ueb.sink.topics.POLICY-CL-MGT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty + +rules.groupId= +rules.artifactId= +rules.version= diff --git a/controlloop/packages/basex/src/files/config/vFW-controller.properties b/controlloop/packages/basex/src/files/config/vFW-controller.properties new file mode 100644 index 000000000..8b8587504 --- /dev/null +++ b/controlloop/packages/basex/src/files/config/vFW-controller.properties @@ -0,0 +1,55 @@ +### +# ============LICENSE_START======================================================= +# PDP-D APPS Base Package +# ================================================================================ +# Copyright (C) 2017 AT&T 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. +# ============LICENSE_END========================================================= +### + +controller.name=vFW + +ueb.source.topics=DCAE-CL-EVENT,APPC-CL + +ueb.source.topics.DCAE-CL-EVENT.servers=vm1.mr.simpledemo.openecomp.org +ueb.source.topics.DCAE-CL-EVENT.apiKey= +ueb.source.topics.DCAE-CL-EVENT.apiSecret= +ueb.source.topics.DCAE-CL-EVENT.events=org.onap.policy.controlloop.VirtualControlLoopEvent +ueb.source.topics.DCAE-CL-EVENT.events.org.onap.policy.controlloop.VirtualControlLoopEvent.filter=closedLoopEventStatus\=.*,closedLoopControlName\=.*FRWL.* +ueb.source.topics.DCAE-CL-EVENT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty + +ueb.source.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org +ueb.source.topics.APPC-CL.apiKey= +ueb.source.topics.APPC-CL.apiSecret= +ueb.source.topics.APPC-CL.events=org.onap.policy.appc.Response +ueb.source.topics.APPC-CL.events.org.onap.policy.appc.Response.filter=CommonHeader=.*,Status=.* +ueb.source.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty + +ueb.sink.topics=APPC-CL,POLICY-CL-MGT + +ueb.sink.topics.APPC-CL.servers=vm1.mr.simpledemo.openecomp.org +ueb.sink.topics.APPC-CL.apiKey= +ueb.sink.topics.APPC-CL.apiSecret= +ueb.sink.topics.APPC-CL.events=org.onap.policy.appc.Request +ueb.sink.topics.APPC-CL.events.custom.gson=org.onap.policy.appc.util.Serialization,gsonPretty + +ueb.sink.topics.POLICY-CL-MGT.servers=vm1.mr.simpledemo.openecomp.org +ueb.sink.topics.POLICY-CL-MGT.apiKey= +ueb.sink.topics.POLICY-CL-MGT.apiSecret= +ueb.sink.topics.POLICY-CL-MGT.events=org.onap.policy.controlloop.VirtualControlLoopNotification +ueb.sink.topics.POLICY-CL-MGT.events.custom.gson=org.onap.policy.controlloop.util.Serialization,gsonPretty + +rules.groupId= +rules.artifactId= +rules.version= diff --git a/controlloop/packages/pom.xml b/controlloop/packages/pom.xml new file mode 100644 index 000000000..f4ccb14cc --- /dev/null +++ b/controlloop/packages/pom.xml @@ -0,0 +1,43 @@ + + + + + 4.0.0 + + + org.onap.policy.drools-applications + controlloop + 1.1.0-SNAPSHOT + + + packages + pom + + PDP-D Application Installation Packages + PDP-D Installation + + + basex + artifacts + apps + + diff --git a/controlloop/pom.xml b/controlloop/pom.xml index 8cb9ef415..9765f9b54 100644 --- a/controlloop/pom.xml +++ b/controlloop/pom.xml @@ -35,6 +35,7 @@ common templates + packages diff --git a/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/pom.xml b/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/pom.xml index 2e43a6019..6eae97484 100644 --- a/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/pom.xml +++ b/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/pom.xml @@ -40,7 +40,7 @@ org.apache.maven.archetype archetype-packaging - 2.4 + 3.0.1 @@ -48,7 +48,7 @@ maven-archetype-plugin - 2.4 + 3.0.1 diff --git a/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/src/main/resources/archetype-resources/pom.xml b/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/src/main/resources/archetype-resources/pom.xml index c023a744d..b0a7639d1 100644 --- a/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/src/main/resources/archetype-resources/pom.xml +++ b/controlloop/templates/template.demo.v1.0.0/archetype-closedloop-demo-rules/src/main/resources/archetype-resources/pom.xml @@ -36,11 +36,6 @@ - - org.onap.policy.drools-applications - demo - ${dependenciesVersion} - org.onap.policy.drools-applications events -- cgit 1.2.3-korg