HTTP/S Modifications
[holmes/engine-management.git] / engine-d-standalone / src / main / assembly / bin / run.sh
1 #!/bin/sh
2
3 #
4 # Copyright 2017 ZTE Corporation.
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 #     http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 #
18
19 DIRNAME=`dirname $0`
20 RUNHOME=`cd $DIRNAME/; pwd`
21 echo @RUNHOME@ $RUNHOME
22
23 echo @JAVA_HOME@ $JAVA_HOME
24 JAVA="$JAVA_HOME/bin/java"
25 echo @JAVA@ $JAVA
26 main_path=$RUNHOME/..
27 cd $main_path
28 JAVA_OPTS="-Xms50m -Xmx128m -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=9202,server=y,suspend=n"
29 port=8312
30 #JAVA_OPTS="$JAVA_OPTS -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=$port,server=y,suspend=n"
31 echo @JAVA_OPTS@ $JAVA_OPTS
32
33 class_path="$main_path/:$main_path/holmes-engine-d.jar"
34 echo @class_path@ $class_path
35
36 if [ -z ${JDBC_USERNAME} ]; then
37     export JDBC_USERNAME=holmes
38     echo "No user name is specified for the database. Use the default value \"$JDBC_USERNAME\"."
39 fi
40
41 if [ -z ${JDBC_PASSWORD} ]; then
42     export JDBC_PASSWORD=holmespwd
43     echo "No password is specified for the database. Use the default value \"$JDBC_PASSWORD\"."
44 fi
45
46 if [ -z ${DB_NAME} ]; then
47     export DB_NAME=holmes
48     echo "No database is name is specified. Use the default value \"$DB_NAME\"."
49 fi
50
51 sed -i "s|url:.*|url: jdbc:postgresql://$URL_JDBC/$DB_NAME|" "$main_path/conf/engine-d.yml"
52 sed -i "s|user:.*|user: $JDBC_USERNAME|" "$main_path/conf/engine-d.yml"
53 sed -i "s|password:.*|password: $JDBC_PASSWORD|" "$main_path/conf/engine-d.yml"
54
55 export SERVICE_IP=`hostname -i`
56 echo SERVICE_IP=${SERVICE_IP}
57
58 if [ ! -z ${TESTING} ] && [ ${TESTING} == 1 ]; then
59     if [ ! -z ${HOST_IP} ]; then
60         export HOSTNAME=${HOST_IP}:9102
61     else
62         export HOSTNAME=${SERVICE_IP}:9102
63     fi
64 fi
65
66 export DB_PORT=5432
67 if [ ! -z ${URL_JDBC} ] && [ `expr index $URL_JDBC :` != 0 ]; then
68     export DB_PORT="${URL_JDBC##*:}"
69 fi
70 echo DB_PORT=$DB_PORT
71
72 if [ -z ${ENABLE_ENCRYPT} ]; then
73     export ENABLE_ENCRYPT=true
74 fi
75 echo ENABLE_ENCRYPT=$ENABLE_ENCRYPT
76
77 KEY_PATH="/home/holmes/conf/holmes.keystore"
78 KEY_PASSWORD="holmes"
79 #HTTPS Configurations
80 sed -i "s|keyStorePath:.*|keyStorePath: $KEY_PATH|" "$main_path/conf/engine-d.yml"
81 sed -i "s|keyStorePassword:.*|keyStorePassword: $KEY_PASSWORD|" "$main_path/conf/engine-d.yml"
82
83 if [ ${ENABLE_ENCRYPT} == true ]; then
84     sed -i "s|type:\s*https\?$|type: https|" "$main_path/conf/engine-d.yml"
85     sed -i "s|#\?keyStorePath|keyStorePath|" "$main_path/conf/engine-d.yml"
86     sed -i "s|#\?keyStorePassword|keyStorePassword|" "$main_path/conf/engine-d.yml"
87     sed -i "s|#\?validateCerts|validateCerts|" "$main_path/conf/engine-d.yml"
88     sed -i "s|#\?validatePeers|validatePeers|" "$main_path/conf/engine-d.yml"
89 else
90     sed -i 's|type:\s*https\?$|type: http|' "$main_path/conf/engine-d.yml"
91     sed -i "s|#\?keyStorePath|#keyStorePath|" "$main_path/conf/engine-d.yml"
92     sed -i "s|#\?keyStorePassword|#keyStorePassword|" "$main_path/conf/engine-d.yml"
93     sed -i "s|#\?validateCerts|#validateCerts|" "$main_path/conf/engine-d.yml"
94     sed -i "s|#\?validatePeers|#validatePeers|" "$main_path/conf/engine-d.yml"
95 fi
96
97 cat "$main_path/conf/engine-d.yml"
98
99 ./bin/initDB.sh $JDBC_USERNAME $JDBC_PASSWORD $DB_NAME $DB_PORT "${URL_JDBC%:*}"
100
101 "$JAVA" $JAVA_OPTS -classpath "$class_path" org.onap.holmes.engine.EngineDActiveApp server "$main_path/conf/engine-d.yml"
102