Ian Maxon has submitted this change and it was merged. Change subject: Relax JAVA_HOME check for sample cluster ......................................................................
Relax JAVA_HOME check for sample cluster Just require that the default configured java is version 1.8 and not that the environment variable is explicitly set. Change-Id: I6b9421b9b480eeea94644a227faf614c2ccf2fb2 Reviewed-on: https://asterix-gerrit.ics.uci.edu/2638 Sonar-Qube: Jenkins <[email protected]> Tested-by: Jenkins <[email protected]> Contrib: Jenkins <[email protected]> Integration-Tests: Jenkins <[email protected]> Reviewed-by: Taewoo Kim <[email protected]> --- M asterixdb/asterix-server/src/main/opt/local/bin/start-sample-cluster.sh M asterixdb/asterix-server/src/main/opt/local/bin/stop-sample-cluster.sh 2 files changed, 111 insertions(+), 12 deletions(-) Approvals: Taewoo Kim: Looks good to me, approved Jenkins: Verified; No violations found; ; Verified diff --git a/asterixdb/asterix-server/src/main/opt/local/bin/start-sample-cluster.sh b/asterixdb/asterix-server/src/main/opt/local/bin/start-sample-cluster.sh index f7e0e34..4f3caed 100755 --- a/asterixdb/asterix-server/src/main/opt/local/bin/start-sample-cluster.sh +++ b/asterixdb/asterix-server/src/main/opt/local/bin/start-sample-cluster.sh @@ -39,13 +39,56 @@ export JAVA_HOME fi -[ -z "$JAVA_HOME" ] && { - echo "JAVA_HOME not set" - exit 1 -} -"$JAVA_HOME/bin/java" -version 2>&1 | grep -q '1\.[89]' || { +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +case "`uname`" in + CYGWIN*) cygwin=true ;; + Darwin*) darwin=true + if [ -z "$JAVA_VERSION" ] ; then + JAVA_VERSION="CurrentJDK" + else + echo "Using Java version: $JAVA_VERSION" + fi + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + JAVA_HOME=`/usr/libexec/java_home` + else + JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Home + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=`java-config --jre-home` + fi +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# If a specific java binary isn't specified search for the standard 'java' binary +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD=`which java` + fi +fi + +"$JAVACMD" -version 2>&1 | grep -q '1\.[89]' || { echo "JAVA_HOME must be at version 1.8 or later:" - "$JAVA_HOME/bin/java" -version + "$JAVACMD" -version exit 2 } DIRNAME=$(dirname "$0") diff --git a/asterixdb/asterix-server/src/main/opt/local/bin/stop-sample-cluster.sh b/asterixdb/asterix-server/src/main/opt/local/bin/stop-sample-cluster.sh index dbce377..522fb7c 100755 --- a/asterixdb/asterix-server/src/main/opt/local/bin/stop-sample-cluster.sh +++ b/asterixdb/asterix-server/src/main/opt/local/bin/stop-sample-cluster.sh @@ -39,13 +39,69 @@ export JAVA_HOME fi -[ -z "$JAVA_HOME" ] && { - echo "JAVA_HOME not set" - exit 1 -} -"$JAVA_HOME/bin/java" -version 2>&1 | grep -q '1\.[89]' || { +while [ -n "$1" ]; do + case $1 in + -f|-force) force=1;; + -help|--help|-usage|--usage) usage; exit 0;; + *) echo "ERROR: unknown argument '$1'"; usage; exit 1;; + esac + shift +done + +if [ -z "$JAVA_HOME" -a -x /usr/libexec/java_home ]; then + JAVA_HOME=$(/usr/libexec/java_home) + export JAVA_HOME +fi + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +case "`uname`" in + CYGWIN*) cygwin=true ;; + Darwin*) darwin=true + if [ -z "$JAVA_VERSION" ] ; then + JAVA_VERSION="CurrentJDK" + else + echo "Using Java version: $JAVA_VERSION" + fi + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + JAVA_HOME=`/usr/libexec/java_home` + else + JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Home + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=`java-config --jre-home` + fi +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# If a specific java binary isn't specified search for the standard 'java' binary +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD=`which java` + fi +fi +"$JAVACMD" -version 2>&1 | grep -q '1\.[89]' || { echo "JAVA_HOME must be at version 1.8 or later:" - "$JAVA_HOME/bin/java" -version + "$JAVACMD" -version exit 2 } DIRNAME=$(dirname "$0") -- To view, visit https://asterix-gerrit.ics.uci.edu/2638 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: merged Gerrit-Change-Id: I6b9421b9b480eeea94644a227faf614c2ccf2fb2 Gerrit-PatchSet: 4 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: Ian Maxon <[email protected]> Gerrit-Reviewer: Ian Maxon <[email protected]> Gerrit-Reviewer: Jenkins <[email protected]> Gerrit-Reviewer: Taewoo Kim <[email protected]> Gerrit-Reviewer: Xikui Wang <[email protected]>
