3 # Licensed to the Apache Software Foundation (ASF) under one
4 # or more contributor license agreements. See the NOTICE file
5 # distributed with this work for additional information
6 # regarding copyright ownership. The ASF licenses this file
7 # to you under the Apache License, Version 2.0 (the
8 # "License"); you may not use this file except in compliance
9 # with the License. You may obtain a copy of the License at
11 # http://www.apache.org/licenses/LICENSE-2.0
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
23 SOURCE="${BASH_SOURCE[0]}"
24 while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
25 SCRIPTDIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
26 SOURCE="$(readlink "$SOURCE")"
27 [[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
29 SCRIPTDIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
31 if [[ -z "${GRADLE_TASK}" ]]; then
32 echo "GRADLE_TASK must be set. exiting..."
36 REPODIR=$(cd geode; git rev-parse --show-toplevel)
38 if [[ ${PARALLEL_GRADLE:-"true"} == "true" ]]; then
39 PARALLEL_GRADLE="--parallel"
41 PARALLEL_GRADLE="--no-parallel"
43 DEFAULT_GRADLE_TASK_OPTIONS="${PARALLEL_GRADLE} --console=plain --no-daemon"
44 GRADLE_SKIP_TASK_OPTIONS="-x javadoc -x spotlessCheck -x rat"
46 if [[ -n "${PARALLEL_DUNIT}" && "${PARALLEL_DUNIT}" == "true" ]]; then
47 PARALLEL_DUNIT="-PparallelDunit"
48 if [ -n "${DUNIT_PARALLEL_FORKS}" ]; then
49 DUNIT_PARALLEL_FORKS="--max-workers=${DUNIT_PARALLEL_FORKS} -PtestMaxParallelForks=${DUNIT_PARALLEL_FORKS} -PdunitParallelForks=${DUNIT_PARALLEL_FORKS}"
53 DUNIT_PARALLEL_FORKS=""
56 case $ARTIFACT_SLUG in
58 echo "Making environment adjustments for windows."
59 JAVA_BUILD_PATH=C:/java${JAVA_BUILD_VERSION}
60 JAVA_TEST_PATH=C:/java${JAVA_TEST_VERSION}
61 TEST_JAVA_8_HOME=C:/java8
62 TEST_JAVA_11_HOME=C:/java11
63 TEST_JAVA_17_HOME=C:/java17
64 GRADLE_SKIP_TASK_OPTIONS="${GRADLE_SKIP_TASK_OPTIONS} -x docker"
66 OPTIONAL_KILL_ALL_CMD="${SEP} \
67 exit_code=\$? ${SEP} \
68 (taskkill //F //IM java.exe //T) ${SEP} \
73 JAVA_BUILD_PATH=/usr/lib/jvm/java-${JAVA_BUILD_VERSION}-openjdk-amd64
74 JAVA_TEST_PATH=/usr/lib/jvm/java-${JAVA_TEST_VERSION}-openjdk-amd64
75 TEST_JAVA_8_HOME=/usr/lib/jvm/java-8-openjdk-amd64
76 TEST_JAVA_11_HOME=/usr/lib/jvm/java-11-openjdk-amd64/
77 TEST_JAVA_17_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
83 -PcompileJVM=${JAVA_BUILD_PATH} \
84 -PcompileJVMVer=${JAVA_BUILD_VERSION} \
85 -PtestJVM=${JAVA_TEST_PATH} \
86 -PtestJVMVer=${JAVA_TEST_VERSION} \
87 -PtestJava8Home=${TEST_JAVA_8_HOME} \
88 -PtestJava11Home=${TEST_JAVA_11_HOME} \
89 -PtestJava17Home=${TEST_JAVA_17_HOME} \
91 ${DUNIT_PARALLEL_FORKS} \
92 ${DEFAULT_GRADLE_TASK_OPTIONS} \
93 ${GRADLE_SKIP_TASK_OPTIONS} \
95 ${GRADLE_TASK_OPTIONS} \
96 ${GRADLE_GLOBAL_ARGS}"
98 EXEC_COMMAND="bash -c 'echo Building with: $SEP \
99 ${JAVA_BUILD_PATH}/bin/java -version $SEP \
100 echo Testing with: $SEP \
101 ${JAVA_TEST_PATH}/bin/java -version $SEP \
103 cp gradlew gradlewStrict $SEP \
104 sed -e 's/JAVA_HOME/GRADLE_JVM/g' -i.bak gradlewStrict $SEP \
105 GRADLE_JVM=${JAVA_BUILD_PATH} JAVA_TEST_PATH=${JAVA_TEST_PATH} ./gradlewStrict ${GRADLE_ARGS}'"
107 echo "${EXEC_COMMAND}"
108 eval "${EXEC_COMMAND}"