Make logback.xml editable after VID is deployed
[vid.git] / deliveries / src / main / scripts / localize.sh
old mode 100644 (file)
new mode 100755 (executable)
index 3966f70..d149e3b
@@ -1,18 +1,37 @@
 #!/bin/bash
 
-#Extract the WAR so it can be customized by the localization script
-cd /tmp/vid/stage
-jar -xf vid.war
+fillTemplateProperties() {
+  source /tmp/vid/localize_war.sh $1 || {
+       echo "ERROR: Localization script failed"
+       exit 2
+  }
+}
+
+createWritableLogbackConfig() {
+  # Create logback.xml in /tmp/vid/
+  # /tmp/logback.xml is owned by root and unmodifiable
+  cp -f /tmp/logback.xml /tmp/vid/logback.xml
+}
 
-source /tmp/vid/localize_war.sh || {
-       echo "ERROR: Localization script failed"
-       exit 2
+deployWarOnTomcatManually() {
+  cd /usr/local/tomcat/webapps/
+  mkdir vid
+  cd vid
+  jar -xf /tmp/vid/stage/vid.war
 }
 
-#Create the customized WAR and deploy it to Tomcat
-mkdir -p /tmp/vid/deployed
-cd /tmp/vid/stage
-jar -cvf /tmp/vid/deployed/vid.war .
-cd
-mv -f /tmp/vid/deployed/vid.war /usr/local/tomcat/webapps
+
+createWritableLogbackConfig
+deployWarOnTomcatManually
+
+TEMPLATES_BASE_DIR=/usr/local/tomcat/webapps/vid/WEB-INF
+
+fillTemplateProperties ${TEMPLATES_BASE_DIR}
+
+# Set CATALINA_OPTS if not defined previously
+# Enables late-evaluation of env variables, such as VID_KEYSTORE_PASSWORD
+: "${CATALINA_OPTS:=-Dvid.keystore.password=${VID_KEYSTORE_PASSWORD} -Dvid.keyalias=vid@vid.onap.org -Dvid.keystore.filename=${VID_KEYSTORE_FILENAME} -Dcom.att.eelf.logging.file=logback.xml -Dcom.att.eelf.logging.path=/tmp/vid/}"
+echo "CATALINA_OPTS: ${CATALINA_OPTS}"
+export CATALINA_OPTS
+
 catalina.sh run