X-Git-Url: https://gerrit.onap.org/r/gitweb?p=holmes%2Frule-management.git;a=blobdiff_plain;f=rulemgt-standalone%2Fsrc%2Fmain%2Fassembly%2Fbin%2Frun.sh;h=fbc7e2166ba4a5da7710f7f174210ae82380933a;hp=bad26c7e951378778b6c614be50190a75ac93016;hb=3151df6463e77aba7f0234a1604b2839450bbc3f;hpb=d5e59a99557d9ff2bcc0f34a9f38860c74010e96 diff --git a/rulemgt-standalone/src/main/assembly/bin/run.sh b/rulemgt-standalone/src/main/assembly/bin/run.sh index bad26c7..fbc7e21 100644 --- a/rulemgt-standalone/src/main/assembly/bin/run.sh +++ b/rulemgt-standalone/src/main/assembly/bin/run.sh @@ -1,7 +1,7 @@ -#!/bin/bash +#!/bin/sh # -# Copyright 2017 ZTE Corporation. +# Copyright 2017-2020 ZTE Corporation. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -26,25 +26,91 @@ echo @JAVA@ $JAVA main_path=$RUNHOME/.. cd $main_path JAVA_OPTS="-Xms50m -Xmx128m" -port=8312 -#JAVA_OPTS="$JAVA_OPTS -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=$port,server=y,suspend=n" +port=9201 +#JAVA_OPTS="$JAVA_OPTS -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=*:$port,server=y,suspend=n" echo @JAVA_OPTS@ $JAVA_OPTS -class_path="$main_path/:$main_path/holmes-rulemgt.jar" +class_path="$main_path/lib/*" echo @class_path@ $class_path -sed -i "s|url:.*|url: jdbc:postgresql://$URL_JDBC/holmes|" "$main_path/conf/rulemgt.yml" +if [ -z ${JDBC_USERNAME} ]; then + export JDBC_USERNAME=holmes + echo "No user name is specified for the database. Use the default value \"$JDBC_USERNAME\"." +fi + +if [ -z ${JDBC_PASSWORD} ]; then + export JDBC_PASSWORD=holmespwd + echo "No password is specified for the database. Use the default value \"$JDBC_PASSWORD\"." +fi + +if [ -z ${DB_NAME} ]; then + export DB_NAME=holmes + echo "No database is name is specified. Use the default value \"$DB_NAME\"." +fi + +sed -i "s|user:.*|user: $JDBC_USERNAME|" "$main_path/conf/rulemgt.yml" +sed -i "s|password:.*|password: $JDBC_PASSWORD|" "$main_path/conf/rulemgt.yml" +sed -i "s|url:.*|url: jdbc:postgresql://$URL_JDBC/$DB_NAME|" "$main_path/conf/rulemgt.yml" sed -i "s|msbServerAddr:.*|msbServerAddr: http://$MSB_ADDR|" "$main_path/conf/rulemgt.yml" export SERVICE_IP=`hostname -i` echo SERVICE_IP=${SERVICE_IP} -if [ ${TESTING}==1 ]; then - export HOSTNAME=${SERVICE_IP}:9101 +if [ ! -z ${TESTING} -a ${TESTING} = 1 ]; then + if [ ! -z ${HOST_IP} ]; then + export HOSTNAME=${HOST_IP}:9101 + else + export HOSTNAME=${SERVICE_IP}:9101 + fi fi +export DB_PORT=5432 +if [ ! -z ${URL_JDBC} -a `expr index $URL_JDBC :` != 0 ]; then + export DB_PORT="${URL_JDBC##*:}" +fi +echo DB_PORT=$DB_PORT -./bin/initDB.sh holmes holmespwd 5432 "${URL_JDBC%:*}" +if [ -z ${ENABLE_ENCRYPT} ]; then + export ENABLE_ENCRYPT=true +fi +echo ENABLE_ENCRYPT=${ENABLE_ENCRYPT} -"$JAVA" $JAVA_OPTS -classpath "$class_path" org.onap.holmes.rulemgt.RuleActiveApp server "$main_path/conf/rulemgt.yml" +KEY_PATH="$main_path/conf/holmes.keystore" +KEY_PASSWORD="holmes" +#HTTPS Configurations +sed -i "s|keyStorePath:.*|keyStorePath: $KEY_PATH|" "$main_path/conf/rulemgt.yml" +sed -i "s|keyStorePassword:.*|keyStorePassword: $KEY_PASSWORD|" "$main_path/conf/rulemgt.yml" +if [ ${ENABLE_ENCRYPT} = true ]; then + sed -i "s|type:\s*https\?$|type: https|" "$main_path/conf/rulemgt.yml" + sed -i "s|#\?keyStorePath|keyStorePath|" "$main_path/conf/rulemgt.yml" + sed -i "s|#\?keyStorePassword|keyStorePassword|" "$main_path/conf/rulemgt.yml" + sed -i "s|#\?validateCerts|validateCerts|" "$main_path/conf/rulemgt.yml" + sed -i "s|#\?validatePeers|validatePeers|" "$main_path/conf/rulemgt.yml" +else + sed -i 's|type:\s*https\?$|type: http|' "$main_path/conf/rulemgt.yml" + sed -i "s|#\?keyStorePath|#keyStorePath|" "$main_path/conf/rulemgt.yml" + sed -i "s|#\?keyStorePassword|#keyStorePassword|" "$main_path/conf/rulemgt.yml" + sed -i "s|#\?validateCerts|#validateCerts|" "$main_path/conf/rulemgt.yml" + sed -i "s|#\?validatePeers|#validatePeers|" "$main_path/conf/rulemgt.yml" +fi + + +./bin/initDB.sh $JDBC_USERNAME $JDBC_PASSWORD $DB_NAME $DB_PORT "${URL_JDBC%:*}" + + +#Register the fronten to MSB +#body='{"serviceName":"holmes","version":"v1","url":"/iui/holmes","nodes":[{"ip":"host_ip","port":"9104","lb_server_params":"","checkType":"","checkUrl":"","checkInterval":"","checkTimeOut":"","ttl":"","ha_role":""}],"protocol":"UI","visualRange":"0|1","lb_policy":"","publish_port":"","namespace":"","network_plane_type":"","host":"","path":"","labels":[],"metadata":[]}' +#msg_body=${body/host_ip/"${HOSTNAME%:*}"} +#curl -X POST -H "Content-Type: application/json" -d ${msg_body} http://${MSB_ADDR}/api/msdiscover/v1/services?is_manual=true +#echo Registered UI to MSB. + + +if [ ${ENABLE_ENCRYPT} = true ]; then + nginx -c /etc/nginx/conf.d/nginx-https.conf +else + nginx -c /etc/nginx/conf.d/nginx-http.conf +fi +echo nginx started. + +"$JAVA" $JAVA_OPTS -classpath "$class_path" org.onap.holmes.rulemgt.RuleActiveApp server "$main_path/conf/rulemgt.yml"