bugfix - DB init error due to single quotes 35/123435/1
author付光荣10144542 <fu.guangrong@zte.com.cn>
Mon, 23 Aug 2021 02:54:03 +0000 (10:54 +0800)
committer付光荣10144542 <fu.guangrong@zte.com.cn>
Mon, 23 Aug 2021 02:54:03 +0000 (10:54 +0800)
Issue-ID: HOLMES-463
Signed-off-by: 付光荣10144542 <fu.guangrong@zte.com.cn>
Change-Id: Iac835bfb113b336a1d4b46db6014fa4c55779d31

engine-d-standalone/src/main/assembly/bin/initDB.sh

index dac6878..f0c3713 100644 (file)
@@ -47,6 +47,12 @@ if [ -z `env | grep PGPASSWORD` ]; then
     need_unset=1
 fi
 
+# Escape the single quote to avoid cause errors when executing the scripts.
+password=`sed -rn "s/.+ ('.+') .+/\1/p" $main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql`
+password=${password:1:-1}
+password_e=`echo $password | sed "s#'#''#g"`
+sed -i "s#$password#$password_e#" $main_path/dbscripts/postgresql/onap-holmes_engine-createobj.sql
+
 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=$?