From 5ce90575096bf2c894bde0dd5f6b99298c5e9e88 Mon Sep 17 00:00:00 2001 From: GuangrongFu Date: Tue, 9 Mar 2021 18:32:02 +0800 Subject: [PATCH] Init DB Using envsubst Change-Id: I2c4ef1518a2a739c2a4c44af1eeba5efb70aca9e Issue-ID: HOLMES-396 Signed-off-by: GuangrongFu --- .../src/main/assembly/bin/initDB.sh | 27 ++++++++++++++++------ engine-d-standalone/src/main/assembly/bin/run.sh | 13 +++++++---- version.properties | 4 ++-- 3 files changed, 31 insertions(+), 13 deletions(-) diff --git a/engine-d-standalone/src/main/assembly/bin/initDB.sh b/engine-d-standalone/src/main/assembly/bin/initDB.sh index 501b90d..9571e59 100644 --- a/engine-d-standalone/src/main/assembly/bin/initDB.sh +++ b/engine-d-standalone/src/main/assembly/bin/initDB.sh @@ -25,9 +25,14 @@ host=$5 echo "Initializing the holmes engine management database..." main_path=$HOME/.. -sed -i "s|DBNAME|$dbname|g" "$main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql" -sed -i "s|DBUSER|$user|g" "$main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql" -sed -i "s|DBPWD|$password|g" "$main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql" +# if deployed using helm, use the helm-generated configuration file. +if [[ -d /opt/hemconfig ]]; then + cp /opt/hemconfig/onap-holmes_engine-createobj.sql "$main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql" +else + sed -i "s|DBNAME|$dbname|g" "$main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql" + sed -i "s|DBUSER|$user|g" "$main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql" + sed -i "s|DBPWD|$password|g" "$main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql" +fi cat $main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql @@ -37,11 +42,19 @@ echo "password=$password" echo "port=$port" echo "host=$host" -export PGPASSWORD=$password -psql -U $user -p $port -h $host -d $dbname -f $main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql -psql -U $user -p $port -h $host -d $dbname --command 'select * from alarm_info;' +if [[ -z `env | grep PGPASSWORD` ]]; then + export PGPASSWORD=$password + need_unset=1 +fi + +psql -U "$user" -p "$port" -h "$host" -d "$dbname" -f $main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql +psql -U "$user" -p "$port" -h "$host" -d "$dbname" --command 'select * from alarm_info;' sql_result=$? -unset PGPASSWORD + +if [[ $need_unset -eq 1 ]]; then + unset PGPASSWORD +fi + echo "sql_result=$sql_result" if [ $sql_result != 0 ] ; then echo "Failed to initialize the database!" diff --git a/engine-d-standalone/src/main/assembly/bin/run.sh b/engine-d-standalone/src/main/assembly/bin/run.sh index 850a8e1..0969273 100644 --- a/engine-d-standalone/src/main/assembly/bin/run.sh +++ b/engine-d-standalone/src/main/assembly/bin/run.sh @@ -48,9 +48,14 @@ if [ -z ${DB_NAME} ]; then echo "No database is name is specified. Use the default value \"$DB_NAME\"." fi -sed -i "s|url:.*|url: jdbc:postgresql://$URL_JDBC/$DB_NAME|" "$main_path/conf/engine-d.yml" -sed -i "s|user:.*|user: $JDBC_USERNAME|" "$main_path/conf/engine-d.yml" -sed -i "s|password:.*|password: $JDBC_PASSWORD|" "$main_path/conf/engine-d.yml" +# if deployed using helm, use the helm-generated configuration file. +if [[ -d /opt/hemconfig ]]; then + cp /opt/hemconfig/engine-d.yml "$main_path/conf/engine-d.yml" +else + sed -i "s|url:.*|url: jdbc:postgresql://$URL_JDBC/$DB_NAME|" "$main_path/conf/engine-d.yml" + sed -i "s|user:.*|user: $JDBC_USERNAME|" "$main_path/conf/engine-d.yml" + sed -i "s|password:.*|password: $JDBC_PASSWORD|" "$main_path/conf/engine-d.yml" +fi export SERVICE_IP=`hostname -i` echo SERVICE_IP=${SERVICE_IP} @@ -96,7 +101,7 @@ fi cat "$main_path/conf/engine-d.yml" -${RUNHOME}/initDB.sh $JDBC_USERNAME $JDBC_PASSWORD $DB_NAME $DB_PORT "${URL_JDBC%:*}" +${RUNHOME}/initDB.sh "$JDBC_USERNAME" "$JDBC_PASSWORD" "$DB_NAME" "$DB_PORT" "${URL_JDBC%:*}" "$JAVA" $JAVA_OPTS -classpath "$class_path" org.onap.holmes.engine.EngineDActiveApp server "$main_path/conf/engine-d.yml" diff --git a/version.properties b/version.properties index e4b2e4a..70bc126 100644 --- a/version.properties +++ b/version.properties @@ -3,8 +3,8 @@ # because they are used in Jenkins, whose plug-in doesn't support major=1 -minor=2 -patch=9 +minor=3 +patch=0 base_version=${major}.${minor}.${patch} -- 2.16.6