Enable k6 tests for latest CPS build
[infra/cicd.git] / jjb / geode / apache-geode-test / execute_tests.sh
index 37231ecd11049c5f12d913e1ce2074b32b69f053..27578b20caf743053be52eec4a0ad1bbc7e2d0d5 100755 (executable)
@@ -44,24 +44,41 @@ DEFAULT_GRADLE_TASK_OPTIONS="${PARALLEL_GRADLE} --console=plain --no-daemon"
 GRADLE_SKIP_TASK_OPTIONS="-x javadoc -x spotlessCheck -x rat"
 
 if [[ -n "${PARALLEL_DUNIT}" && "${PARALLEL_DUNIT}" == "true" ]]; then
-  PARALLEL_DUNIT="-PparallelDunit -PdunitDockerUser=geode"
-  if [ -n "${DUNIT_PARALLEL_FORKS}" ]; then
+  PARALLEL_DUNIT="-PparallelDunit"
+  if [[ -n "${DUNIT_PARALLEL_FORKS}" && "${TEST_USING_DOCKER}" == "false" ]] ; then
+    DUNIT_PARALLEL_FORKS="--max-workers=${DUNIT_PARALLEL_FORKS} -PtestMaxParallelForks=${DUNIT_PARALLEL_FORKS} -PdunitParallelForks=${DUNIT_PARALLEL_FORKS}"
+  elif [[ -n "${DUNIT_PARALLEL_FORKS}" && "${TEST_USING_DOCKER}" == "true" ]] ; then
     DUNIT_PARALLEL_FORKS="-PdunitParallelForks=${DUNIT_PARALLEL_FORKS}"
+    DOCKER_TESTING_OPTIONS="-PdunitDockerUser=geode -PdunitDockerImage=\$(docker images --format '{{.Repository}}:{{.Tag}}' | grep test-container)"
   fi
 else
   PARALLEL_DUNIT=""
   DUNIT_PARALLEL_FORKS=""
+  DOCKER_TESTING_OPTIONS=""
 fi
 
 case $ARTIFACT_SLUG in
   windows*)
+    echo "Making environment adjustments for windows."
     JAVA_BUILD_PATH=C:/java${JAVA_BUILD_VERSION}
     JAVA_TEST_PATH=C:/java${JAVA_TEST_VERSION}
+    TEST_JAVA_8_HOME=C:/java8
+    TEST_JAVA_11_HOME=C:/java11
+    TEST_JAVA_17_HOME=C:/java17
+    GRADLE_SKIP_TASK_OPTIONS="${GRADLE_SKIP_TASK_OPTIONS} -x docker"
     SEP=";"
+    OPTIONAL_KILL_ALL_CMD="${SEP} \
+      exit_code=\$? ${SEP} \
+      (taskkill //F //IM java.exe //T) ${SEP} \
+      exit \${exit_code}
+      "
     ;;
   *)
     JAVA_BUILD_PATH=/usr/lib/jvm/java-${JAVA_BUILD_VERSION}-openjdk-amd64
     JAVA_TEST_PATH=/usr/lib/jvm/java-${JAVA_TEST_VERSION}-openjdk-amd64
+    TEST_JAVA_8_HOME=/usr/lib/jvm/java-8-openjdk-amd64
+    TEST_JAVA_11_HOME=/usr/lib/jvm/java-11-openjdk-amd64/
+    TEST_JAVA_17_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
     SEP="&&"
     ;;
 esac
@@ -71,9 +88,12 @@ GRADLE_ARGS=" \
     -PcompileJVMVer=${JAVA_BUILD_VERSION} \
     -PtestJVM=${JAVA_TEST_PATH} \
     -PtestJVMVer=${JAVA_TEST_VERSION} \
+    -PtestJava8Home=${TEST_JAVA_8_HOME} \
+    -PtestJava11Home=${TEST_JAVA_11_HOME} \
+    -PtestJava17Home=${TEST_JAVA_17_HOME} \
     ${PARALLEL_DUNIT} \
     ${DUNIT_PARALLEL_FORKS} \
-    -PdunitDockerImage=\$(docker images --format '{{.Repository}}:{{.Tag}}' | grep test-container) \
+    ${DOCKER_TESTING_OPTIONS} \
     ${DEFAULT_GRADLE_TASK_OPTIONS} \
     ${GRADLE_SKIP_TASK_OPTIONS} \
     ${GRADLE_TASK} \
@@ -87,11 +107,16 @@ EXEC_COMMAND="bash -c 'echo Building with: $SEP \
   cd geode $SEP \
   cp gradlew gradlewStrict $SEP \
   sed -e 's/JAVA_HOME/GRADLE_JVM/g' -i.bak gradlewStrict $SEP \
-  GRADLE_JVM=${JAVA_BUILD_PATH} ./gradlewStrict ${GRADLE_ARGS}'"
+  GRADLE_JVM=${JAVA_BUILD_PATH} JAVA_TEST_PATH=${JAVA_TEST_PATH} ./gradlewStrict ${GRADLE_ARGS}'"
 echo "${EXEC_COMMAND}"
 eval "${EXEC_COMMAND}"
 
 # Cleanup
 # Make sure all test containers are stopped and removed when tests are finished
-docker stop $(docker ps -a -q)
-docker rm $(docker ps -a -q)
\ No newline at end of file
+DOCKER_CONTAINERS=$(sudo docker ps -a -q 2> /dev/null)
+if [ -n "${DOCKER_CONTAINERS}" ]; then
+  docker stop ${DOCKER_CONTAINERS} > /dev/null
+  echo -e  "Removing containers with ID:"
+  docker rm ${DOCKER_CONTAINERS}
+fi
+