Merge "Make tox/python jobs use 4g builder"
[releng/builder.git] / jjb / integration / include-raw-integration-deploy-controller-offline.sh
index c91f3f301c21ddc9e0b0f1b03b670dfb1f708940..0b7a05ae6d1fb517ae1bc29f97dce29102b9b75f 100644 (file)
@@ -8,7 +8,7 @@ echo "Clean workspace"
 rm -rf *
 
 echo "Downloading the distribution..."
-wget --no-verbose  ${ACTUALBUNDLEURL}
+wget --no-verbose --show-progress --progress=dot:giga ${ACTUALBUNDLEURL}
 
 echo "Extracting the new controller..."
 unzip -q ${BUNDLE}
@@ -22,7 +22,7 @@ echo "Configuring the log..."
 LOGCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg
 sed -ie 's/log4j.appender.out.maxBackupIndex=10/log4j.appender.out.maxBackupIndex=1/g' ${LOGCONF}
 # FIXME: Make log size limit configurable from build parameter.
-sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=100GB/g' ${LOGCONF}
+sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=30GB/g' ${LOGCONF}
 cat ${LOGCONF}
 
 echo "Configure the repos..."
@@ -36,28 +36,41 @@ MEMCONF=${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv
 sed -ie "s/2048m/${CONTROLLERMEM}/g" ${MEMCONF}
 cat ${MEMCONF}
 
-echo "JDK Version ..."
+if [ ${JDKVERSION} == 'openjdk8' ]; then
+    echo "Setting the JRE Version to 8"
+    # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
+    # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.60-2.b27.el7_1.x86_64/jre/bin/java
+    export JAVA_HOME=/usr/lib/jvm/java-1.8.0
+elif [ ${JDKVERSION} == 'openjdk7' ]; then
+    echo "Setting the JRE Version to 7"
+    # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
+    # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.85-2.6.1.2.el7_1.x86_64/jre/bin/java
+    export JAVA_HOME=/usr/lib/jvm/java-1.7.0
+fi
+readlink -e "${JAVA_HOME}/bin/java"
+echo "Default JDK Version, JAVA_HOME should override"
 java -version
 
+echo "Redirecting karaf console output to karaf_console.log"
+export KARAF_REDIRECT="${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"
+
 echo "Starting controller..."
 ${WORKSPACE}/${BUNDLEFOLDER}/bin/start
 
-echo "sleeping for 10 seconds..."
-sleep 10
+echo "Sleeping 30 seconds to make sure Karaf ssh has started..."
+sleep 30
 
 echo "Installing all features..."
 sshpass -p karaf ${WORKSPACE}/${BUNDLEFOLDER}/bin/client -u karaf "feature:install ${ACTUALFEATURES}" || echo $? > ${WORKSPACE}/error.txt
 
-echo "dumping first 500K bytes of karaf log..."
-head --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" > "karaf.log"
-echo "dumping last 500K bytes of karaf log..."
-tail --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" > "karaf.log"
-# TODO: Do we want different name for karaf.log chunk to signal it may be not complete?
 echo "killing karaf process..."
 ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh
 sleep 5
-xz -9ekvv "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
-mv "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log.xz" .
+
+echo "Fetching Karaf logs"
+# TODO: Move instead of copy? Gzip?
+cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
+cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
 
 echo "Exit with error"
 if [ -f ${WORKSPACE}/error.txt ]; then
@@ -66,4 +79,3 @@ if [ -f ${WORKSPACE}/error.txt ]; then
 fi
 
 # vim: ts=4 sw=4 sts=4 et ft=sh :
-