Add CSITs for vCPE, vDNS, and vFW policies
Runs xacml and drools, but does not currently run api or pap.
PAP actions are simulated by injecting messages onto the dmaap
topic read by xacml-pdp and drools-pdp.
All other systems (e.g., dmaap, aai) are simulated using
policy-models-simulators.
Issue-ID: POLICY-2491
Change-Id: Ic05e3a6514e84040f5a965aa8d2cac9ed2e9abc2
Signed-off-by: Jim Hahn <jrh3@att.com>
diff --git a/plans/policy/drools-applications/setup.sh b/plans/policy/drools-applications/setup.sh
index c66c492..99b0015 100755
--- a/plans/policy/drools-applications/setup.sh
+++ b/plans/policy/drools-applications/setup.sh
@@ -1,7 +1,8 @@
#!/bin/bash
-# ============LICENSE_START=======================================================
+#
+# ===========LICENSE_START====================================================
# Copyright (C) 2019-2020 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
@@ -13,9 +14,8 @@
# 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=====================================================
#
-# SPDX-License-Identifier: Apache-2.0
-# ============LICENSE_END=========================================================
# OS upgrades
@@ -24,41 +24,57 @@
echo ${GERRIT_BRANCH}
echo ${POLICY_MARIADB_VER}
+SCR2=${WORKSPACE}/scripts/policy/drools-apps
+
echo "Uninstall docker-py and reinstall docker."
pip uninstall -y docker-py
pip uninstall -y docker
pip install -U docker==2.7.0
sudo apt-get -y install libxml2-utils
+${SCRIPTS}/policy/policy-models-simulators.sh
+
+POLICY_XACML_PDP_VERSION_EXTRACT="$(curl -q --silent https://git.onap.org/policy/xacml-pdp/plain/pom.xml?h=${GERRIT_BRANCH} | xmllint --xpath '/*[local-name()="project"]/*[local-name()="version"]/text()' -)"
+export POLICY_XACML_PDP_VERSION="${POLICY_XACML_PDP_VERSION_EXTRACT:0:3}-SNAPSHOT-latest"
POLICY_DROOLS_APPS_VERSION_EXTRACT="$(curl -q --silent https://git.onap.org/policy/drools-applications/plain/pom.xml?h=${GERRIT_BRANCH} | xmllint --xpath '/*[local-name()="project"]/*[local-name()="version"]/text()' -)"
echo ${POLICY_DROOLS_APPS_VERSION_EXTRACT}
export POLICY_DROOLS_APPS_VERSION="${POLICY_DROOLS_APPS_VERSION_EXTRACT:0:3}-SNAPSHOT-latest"
+
+echo ${POLICY_XACML_PDP_VERSION}
echo ${POLICY_DROOLS_APPS_VERSION}
echo "user information: $(id)"
echo "docker and docker-compose versions:"
docker -v && docker-compose -v
-docker container ls -a
+# Adding this waiting container due to race condition between drools and mariadb
+docker-compose -f ${SCR2}/docker-compose-drools-apps.yml run --rm start_dependencies
-docker-compose -f ${WORKSPACE}/scripts/policy/docker-compose-drools-apps.yml up -d
-sleep 2m
+# now bring everything else up
+docker-compose -f ${SCR2}/docker-compose-drools-apps.yml run --rm start_all
-docker container ls -a
+unset http_proxy https_proxy
-POLICY_DROOLS_IP=`get-instance-ip.sh drools`
-MARIADB_IP=`get-instance-ip.sh mariadb`
+DROOLS_IP=`get-instance-ip.sh drools`
+XACML_IP=`get-instance-ip.sh policy-xacml-pdp`
+SIM_IP=`get-instance-ip.sh policy.api.simpledemo.onap.org`
+export SIM_IP
-echo DROOLS IP IS ${POLICY_DROOLS_IP}
-echo MARIADB IP IS ${MARIADB_IP}
+echo DROOLS IP IS ${DROOLS_IP}
+echo XACML IP IS ${XACML_IP}
+echo SIMULATORS IP IS ${SIM_IP}
-for i in {1..10}; do
- curl -sS ${POLICY_DROOLS_IP}:6969 && break
- echo sleep $i
- sleep $i
-done
+# activate xacml
+${SCR2}/manage.sh ${SCR2}/activate.xacml.json
-# to give enough time to the usecases controller to come up
-sleep 2m
+# give enough time for the controllers to come up
+sleep 15
-ROBOT_VARIABLES="-v POLICY_DROOLS_IP:${POLICY_DROOLS_IP}"
+# wait for xacml to activate
+${SCRIPTS}/policy/wait_for_port.sh ${XACML_IP} 6969
+
+ROBOT_VARIABLES=""
+ROBOT_VARIABLES="${ROBOT_VARIABLES} -v SCR2:${SCR2}"
+ROBOT_VARIABLES="${ROBOT_VARIABLES} -v DROOLS_IP:${DROOLS_IP}"
+ROBOT_VARIABLES="${ROBOT_VARIABLES} -v XACML_IP:${XACML_IP}"
+ROBOT_VARIABLES="${ROBOT_VARIABLES} -v SIM_IP:${SIM_IP}"