X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=kubernetes%2Fappc%2Fresources%2Fconfig%2Fappc%2Fopt%2Fonap%2Fappc%2Fbin%2FstartODL.sh;h=6a36fdf37be57d10b530467bf581788604b616e1;hb=4d246d382fb51e881ee21c99c23aa7ec5d885691;hp=e5f04ca5e2e57e411c6d0b9f62a42bb09b526170;hpb=b2e4ea650381d9e109c23a9fe51980655500fb29;p=oom.git diff --git a/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh index e5f04ca5e2..6a36fdf37b 100755 --- a/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh +++ b/kubernetes/appc/resources/config/appc/opt/onap/appc/bin/startODL.sh @@ -5,6 +5,7 @@ # APPC # ================================================================================ # Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. +# Modifications Copyright © 2018 Amdocs,Bell Canada # ================================================================================ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -32,10 +33,6 @@ function enable_odl_cluster(){ exit fi - echo "Installing Opendaylight cluster features" - ${ODL_HOME}/bin/client feature:install odl-mdsal-clustering - ${ODL_HOME}/bin/client feature:install odl-jolokia - echo "Update cluster information statically" hm=$(hostname) echo "Get current Hostname ${hm}" @@ -53,51 +50,62 @@ function enable_odl_cluster(){ } ODL_HOME=${ODL_HOME:-/opt/opendaylight/current} -ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-admin} SDNC_HOME=${SDNC_HOME:-/opt/onap/ccsdk} APPC_HOME=${APPC_HOME:-/opt/onap/appc} SLEEP_TIME=${SLEEP_TIME:-120} -MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.dbRootPassword}}} +MYSQL_PASSWD=${MYSQL_PASSWD:-{{.Values.config.mariadbRootPassword}}} ENABLE_ODL_CLUSTER=${ENABLE_ODL_CLUSTER:-false} +ENABLE_AAF=${ENABLE_AAF:-true} +DBINIT_DIR=${DBINIT_DIR:-/opt/opendaylight/current/daexim} appcInstallStartTime=$(date +%s) -# -# Adding the DMAAP_TOPIC_ENV variable into APPC-ASDC-LISTENER properties -# -DMAAP_TOPIC_ENV=${DMAAP_TOPIC_ENV} - -if [ -z "$DMAAP_TOPIC_ENV" ] - then - echo "DMAAP_TOPIC_ENV shell variable is empty. Adding default value OS-ETE-DFW" - DMAAP_TOPIC_ENV="OS-ETE-DFW" - else - echo "DMAAP_TOPIC_ENV shell variable exists and it's $DMAAP_TOPIC_ENV" -fi - -echo "Adding a value to property appc.asdc.env in appc.properties for appc-asdc-listener feature" -echo "" >> $APPC_HOME/data/properties/appc.properties -echo "appc.asdc.env=$DMAAP_TOPIC_ENV" >> $APPC_HOME/data/properties/appc.properties -echo "" >> $APPC_HOME/data/properties/appc.properties - # # Wait for database to init properly # -echo "Waiting for mysql" -until mysql -h {{.Values.mysql.service.name}}.{{.Release.Namespace}} -u root -p{{.Values.config.dbRootPassword}} mysql &> /dev/null +echo "Waiting for mariadbgalera" +until mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p{{.Values.config.mariadbRootPassword}} mysql &> /dev/null do printf "." sleep 1 done -echo -e "\nmysql ready" +echo -e "\nmariadbgalera ready" -if [ ! -f ${SDNC_HOME}/.installed ] +if [ ! -d ${DBINIT_DIR} ] then - echo "Installing SDNC database" - ${SDNC_HOME}/bin/installSdncDb.sh + mkdir -p ${DBINIT_DIR} +fi + +if [ ! -f ${DBINIT_DIR}/.installed ] +then + sdnc_db_exists=$(mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p{{.Values.config.mariadbRootPassword}} mysql <<-END +show databases like 'sdnctl'; +END +) + if [ "x${sdnc_db_exists}" == "x" ] + then + echo "Installing SDNC database" + ${SDNC_HOME}/bin/installSdncDb.sh + fi + + appc_db_exists=$(mysql -h {{.Values.config.mariadbGaleraSVCName}}.{{.Release.Namespace}} -u root -p{{.Values.config.mariadbRootPassword}} mysql <<-END +show databases like 'appcctl'; +END +) + if [ "x${appc_db_exists}" == "x" ] + then + echo "Installing APPC database" + ${APPC_HOME}/bin/installAppcDb.sh + fi + + echo "Installed at `date`" > ${DBINIT_DIR}/.installed +fi + - echo "Installing APPC database" - ${APPC_HOME}/bin/installAppcDb.sh +if [ ! -f ${SDNC_HOME}/.installed ] +then + echo "Installing ODL Host Key" + ${SDNC_HOME}/bin/installOdlHostKey.sh echo "Starting OpenDaylight" ${ODL_HOME}/bin/start @@ -108,7 +116,7 @@ then echo "Copying a working version of the logging configuration into the opendaylight etc folder" cp ${APPC_HOME}/data/org.ops4j.pax.logging.cfg ${ODL_HOME}/etc/org.ops4j.pax.logging.cfg echo "Copying a new version of aaf cadi shiro into the opendaylight deploy folder" - cp ${APPC_HOME}/data/aaf-cadi-shiro.jar ${ODL_HOME}/deploy/aaf-cadi-shiro.jar + cp ${APPC_HOME}/data/aaf-shiro-aafrealm-osgi-bundle.jar ${ODL_HOME}/deploy/aaf-shiro-aafrealm-osgi-bundle.jar echo "Installing SDNC platform features" ${SDNC_HOME}/bin/installFeatures.sh @@ -119,6 +127,8 @@ then ${SDNC_HOME}/svclogic/bin/install.sh fi + if $ENABLE_ODL_CLUSTER ; then echo "Installing Opendaylight cluster features" ; ${ODL_HOME}/bin/client feature:install odl-mdsal-clustering ; ${ODL_HOME}/bin/client feature:install odl-jolokia ; fi + echo "Installing APPC platform features" ${APPC_HOME}/bin/installFeatures.sh @@ -141,18 +151,43 @@ then echo "cadi_prop_files=${APPC_HOME}/data/properties/cadi.properties" >> ${ODL_HOME}/etc/system.properties echo "" >> ${ODL_HOME}/etc/system.properties - echo "Copying a working version of the shiro configuration into the opendaylight etc folder" - cp ${APPC_HOME}/data/shiro.ini ${ODL_HOME}/etc/shiro.ini + echo "Copying the aaa shiro configuration into opendaylight" + if $ENABLE_AAF + then + cp ${APPC_HOME}/data/properties/aaa-app-config.xml ${ODL_HOME}/etc/opendaylight/datastore/initial/config/aaa-app-config.xml + else + cp ${APPC_HOME}/data/aaa-app-config.xml ${ODL_HOME}/etc/opendaylight/datastore/initial/config/aaa-app-config.xml + fi echo "Restarting OpenDaylight" ${ODL_HOME}/bin/stop - echo "Waiting 60 seconds for OpenDaylight stop to complete" - sleep 60 + checkRun () { + running=0 + while read a b c d e f g h + do + if [ "$h" == "/bin/sh /opt/opendaylight/bin/karaf server" ] + then + running=1 + fi + done < <(ps -eaf) + echo $running + } + + while [ $( checkRun ) == 1 ] + do + echo "Karaf is still running, waiting..." + sleep 5s + done + echo "Karaf process has stopped" + sleep 10s echo "Installed at `date`" > ${SDNC_HOME}/.installed fi appcInstallEndTime=$(date +%s) echo "Total Appc install took $(expr $appcInstallEndTime - $appcInstallStartTime) seconds" -exec ${ODL_HOME}/bin/karaf +echo "Starting cdt-proxy-service jar, logging to ${APPC_HOME}/cdt-proxy-service/jar.log" +java -jar ${APPC_HOME}/cdt-proxy-service/cdt-proxy-service.jar > ${APPC_HOME}/cdt-proxy-service/jar.log & + +exec ${ODL_HOME}/bin/karaf server