Remove eelf dependency
[dmaap/buscontroller.git] / misc / dmaapbc
index c65a74b..aca8f9e 100644 (file)
@@ -31,7 +31,9 @@ PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/java/jdk/
 export PATH
 CLASSPATH=`echo $APP_ROOT/etc $APP_ROOT/lib/*.jar | tr ' ' ':'` 
 export CLASSPATH
-CONTAINER_CONFIG=/opt/app/config/conf
+CONFIGMAP_ROOT=${CONFIGMAP_ROOT:-/opt/app/config}
+CONFIGMAP_PROPS=${CONFIGMAP_PROPS:-$CONFIGMAP_ROOT/conf/dmaapbc.properties}
+CONTAINER_CONFIG=$CONFIGMAP_ROOT/conf/buscontroller.env
 MAIN=org.onap.dmaap.dbcapi.server.Main 
 
 
@@ -43,6 +45,7 @@ pids() {
 }
 
 config() {
+       echo "ENTER config"
        set -x
        if [ ! -d $APP_ROOT ]
        then
@@ -51,8 +54,8 @@ config() {
        fi
        if [ !  -f $CONTAINER_CONFIG ]
        then
-               echo "Expected env file $CONTAINER_CONFIG not found"
-               exit 1
+               echo "WARNING: Expected env file $CONTAINER_CONFIG not found. Default behaviors in effect"
+               find $CONTAINER_ROOT -type f
        fi
        cd $APP_ROOT
        source $CONTAINER_CONFIG
@@ -73,12 +76,25 @@ config() {
        $APP_ROOT/misc/cert-client-init.sh
        . misc/havecert.tmpl > etc/havecert
        chmod +x etc/havecert
-       . misc/dmaapbc.properties.tmpl > etc/dmaapbc.properties
-    . misc/PolicyEngineApi.properties.tmpl > config/PolicyEngineApi.properties
+
+       # These files might be better provided in kubernetes configmaps
+       # so if they are there, use them
+       if [ -f $CONFIGMAP_PROPS ]
+       then
+               PROPS=$CONFIGMAP_PROPS
+       else
+               PROPS=etc/dmaapbc.properties
+               . misc/dmaapbc.properties.tmpl > $PROPS
+       fi
+       if [ ! -f config/PolicyEngineApi.properties ]
+       then
+               . misc/PolicyEngineApi.properties.tmpl > config/PolicyEngineApi.properties
+       fi
        set +x
 }
 
 start() {
+       echo "ENTER start"
        set -x
        ID=`id -n -u`
        GRP=`id -n -g`
@@ -93,6 +109,7 @@ start() {
                exit 1
        fi
        cd $APP_ROOT
+       pwd
 
        if etc/havecert
        then
@@ -111,7 +128,7 @@ start() {
 
        # JVM flags
 #old line from Dockerfile...keep for reference only
-       FLAGS="-cp etc:lib/* -Dlog4j.configuration=etc/log4j.properties -Ddmaapbc.properties=etc/dmaapbc.properties  -Dlogback.configurationFile=etc/logback.xml -Dhttps.protocols=TLSv1.2 -Dhttps.cipherSuites=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"
+       FLAGS="-cp etc:lib/* -Dlog4j.configuration=etc/log4j.properties -DConfigFile=$PROPS  -Dlogback.configurationFile=etc/logback.xml -Dhttps.protocols=TLSv1.2 -Dhttps.cipherSuites=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"
        #nohup java $FLAGS $MAIN </dev/null >/dev/null 2>&1 &
        nohup java $FLAGS $MAIN </dev/null  &
        sleep 5
@@ -120,6 +137,7 @@ start() {
 }
 
 stop() {
+       echo "ENTER stop"
        ID=`id -n -u`
        GRP=`id -n -g`
        if [ "$ID" != "$USER" ]
@@ -146,6 +164,7 @@ stop() {
 }
 
 status() {
+       echo "ENTER status"
        PIDS=`pids`
        if [ "$PIDS" != "" ]
        then
@@ -155,11 +174,46 @@ status() {
        fi
 }
 
+init() {
+       echo "ENTER init"
+       if [ ! -d $CONFIGMAP_ROOT ]
+       then
+               echo $CONFIGMAP_ROOT does not exist
+               return
+       fi
+
+       #loop on get /dmaap until we get a good response to indicate other provisioning can continue
+       rc=999
+       while [ $rc != "200" ]
+       do
+               sleep 10
+               rc=`curl -s -o /dev/null -I -w "%{http_code}" -X GET -H "Content-Type: application/json" http://dmaap-bc:8080/webapi/dmaap`
+               echo "get dmaap response=${rc}"
+       done
+
+       cd $CONFIGMAP_ROOT
+       pwd
+       # order is important in this next list
+       for uri in dmaap dcaeLocations mr_clusters topics feeds
+       do
+               if [ -d ${uri} ]
+               then
+                       for j in `ls ${uri}/*.json`
+                       do
+                               echo "POST $j to $uri"
+                               rc=`curl -v -X POST -w "%{http_code}" -H "Content-Type: application/json" -d @${j} http://dmaap-bc:8080/webapi/${uri}`
+                               echo "response=$rc"
+                       done
+               fi
+       done
+}
+
 set -x
 case "$1" in
 'deploy')
        config
        start
+       init
        wait
        ;;
 'start')