diff --git a/buildenv/jenkins/JenkinsfileBase b/buildenv/jenkins/JenkinsfileBase
index 2414841bef..e71efb18af 100644
--- a/buildenv/jenkins/JenkinsfileBase
+++ b/buildenv/jenkins/JenkinsfileBase
@@ -1,5 +1,4 @@
#!groovy
-/* template jenkinsfile for adoptopenjdk test builds*/
def getBuildList() {
def TESTPROJECTS = [system:'systemtest', perf:'performance', jck:'jck', external:'thirdparty_containers', functional: 'functional', openjdk:'openjdk_regression', jdk:'openjdk_regression', runtest:'', sanity:'', extended:'']
String fullTarget="${TARGET}"
@@ -26,10 +25,15 @@ def stageTestBinaries() {
}
def setupEnv() {
+ // env.JAVA_VERSION = "${getJavaVersionFromJvmVersion()}"
+ env.JAVA_VERSION = "${JAVA_VERSION}"
+ /* Optional parameter JAVA_VERSION to use for Panama/Valhalla/Amber cases, otherwise its calculated from JVM_VERSION */
+ if( params.JAVA_VERSION ) {
+ env.JAVA_VERSION = params.JAVA_VERSION
+ }
env.JAVA_BIN = "$WORKSPACE/openjdkbinary/j2sdk-image/${(JAVA_VERSION == 'SE80') ? 'jre/' : ''}bin"
env.JRE_IMAGE = "$WORKSPACE/openjdkbinary/j2jre-image"
env.JAVA_HOME = "${JAVA_BIN}/.."
- env.JAVA_VERSION = "${JAVA_VERSION}"
env.JVM_VERSION = "${JVM_VERSION}"
env.SPEC = "${SPEC}"
@@ -284,6 +288,15 @@ def testBuild() {
}
}
+def getJavaVersionFromJvmVersion() {
+ String regex = ${JVM_VERSION}
+ def m = regex =~ /^openjdk(\d+)(-openj9|-sap)?$/
+ def match = m[0][1]
+ def java_version = "SE$match0"
+ echo "java_version=$java_version"
+ return java_version
+}
+
def setLabelParam() {
if( params.LABEL ) {
LABEL = params.LABEL
diff --git a/buildenv/jenkins/openjdk_aarch64_linux b/buildenv/jenkins/openjdk_aarch64_linux
new file mode 100644
index 0000000000..2dc7a550c4
--- /dev/null
+++ b/buildenv/jenkins/openjdk_aarch64_linux
@@ -0,0 +1,18 @@
+#!groovy
+LABEL='sw.os.linux&&hw.arch.aarch64'
+
+node ("master") {
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.setLabelParam()
+ cleanWs()
+}
+
+node("$LABEL") {
+ PLATFORM = 'aarch64_linux'
+ SDK_RESOURCE = 'upstream'
+ SPEC='linux_arm'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
\ No newline at end of file
diff --git a/buildenv/jenkins/openjdk_ppc64_aix b/buildenv/jenkins/openjdk_ppc64_aix
new file mode 100644
index 0000000000..f449ce6e99
--- /dev/null
+++ b/buildenv/jenkins/openjdk_ppc64_aix
@@ -0,0 +1,18 @@
+#!groovy
+LABEL='hw.arch.ppc&&sw.os.aix'
+
+node ("master") {
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.setLabelParam()
+ cleanWs()
+}
+
+node("$LABEL") {
+ PLATFORM = 'ppc64_aix'
+ SDK_RESOURCE = 'upstream'
+ SPEC='aix_ppc-64_cmprssptrs'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
\ No newline at end of file
diff --git a/buildenv/jenkins/openjdk_ppc64le_linux b/buildenv/jenkins/openjdk_ppc64le_linux
new file mode 100644
index 0000000000..c9142a761f
--- /dev/null
+++ b/buildenv/jenkins/openjdk_ppc64le_linux
@@ -0,0 +1,18 @@
+#!groovy
+LABEL='sw.os.linux&&hw.arch.ppc64le'
+
+node ("master") {
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.setLabelParam()
+ cleanWs()
+}
+
+node("$LABEL") { //ppc64le build use "fedora" too, for now leave as is
+ PLATFORM = 'ppc64le_linux'
+ SDK_RESOURCE = 'upstream'
+ SPEC='linux_ppc-64_cmprssptrs_le'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
diff --git a/buildenv/jenkins/openjdk_s390x_linux b/buildenv/jenkins/openjdk_s390x_linux
new file mode 100644
index 0000000000..eb5f8fd502
--- /dev/null
+++ b/buildenv/jenkins/openjdk_s390x_linux
@@ -0,0 +1,18 @@
+#!groovy
+LABEL='sw.os.linux&&hw.arch.s390x'
+
+node ("master") {
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.setLabelParam()
+ cleanWs()
+}
+
+node("$LABEL") {
+ PLATFORM = 's390x_linux'
+ SDK_RESOURCE = 'upstream'
+ SPEC='linux_390-64_cmprssptrs'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
diff --git a/buildenv/jenkins/openjdk_x86-64_linux b/buildenv/jenkins/openjdk_x86-64_linux
new file mode 100644
index 0000000000..95eecc3f41
--- /dev/null
+++ b/buildenv/jenkins/openjdk_x86-64_linux
@@ -0,0 +1,18 @@
+#!groovy
+LABEL='sw.os.linux&&hw.arch.x86'
+
+node ("master") {
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.setLabelParam()
+ cleanWs()
+}
+
+node("$LABEL") {
+ PLATFORM = 'x64_linux'
+ SDK_RESOURCE = 'upstream'
+ SPEC='linux_x86-64_cmprssptrs'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
diff --git a/buildenv/jenkins/openjdk_x86-64_linux_docker b/buildenv/jenkins/openjdk_x86-64_linux_docker
new file mode 100644
index 0000000000..35dfdd98e5
--- /dev/null
+++ b/buildenv/jenkins/openjdk_x86-64_linux_docker
@@ -0,0 +1,9 @@
+#!groovy
+node('linux&&x64&&test&&sw.tool.docker') {
+ PLATFORM = 'x64_linux'
+ SDK_RESOURCE = 'upstream'
+ SPEC='linux_x86-64_cmprssptrs'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
\ No newline at end of file
diff --git a/buildenv/jenkins/openjdk_x86-64_macos b/buildenv/jenkins/openjdk_x86-64_macos
new file mode 100644
index 0000000000..702f340d07
--- /dev/null
+++ b/buildenv/jenkins/openjdk_x86-64_macos
@@ -0,0 +1,18 @@
+#!groovy
+LABEL='sw.os.osx&&hw.arch.x86'
+
+node ("master") {
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.setLabelParam()
+ cleanWs()
+}
+
+node("$LABEL") {
+ PLATFORM = 'x64_mac'
+ SDK_RESOURCE = 'upstream'
+ SPEC='mac_x86-64'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
\ No newline at end of file
diff --git a/buildenv/jenkins/openjdk_x86-64_windows b/buildenv/jenkins/openjdk_x86-64_windows
new file mode 100644
index 0000000000..bedce41635
--- /dev/null
+++ b/buildenv/jenkins/openjdk_x86-64_windows
@@ -0,0 +1,18 @@
+#!groovy
+LABEL='hw.arch.x86&&sw.os.windows'
+
+node ("master") {
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.setLabelParam()
+ cleanWs()
+}
+
+node("$LABEL") {
+ PLATFORM = 'x64_win'
+ SDK_RESOURCE = 'upstream'
+ SPEC='win_x86-64_cmprssptrs'
+ checkout scm
+ def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
+ jenkinsfile.testBuild()
+}
diff --git a/jck/build.xml b/jck/build.xml
index 20270e0e6c..aa2ee89fdf 100644
--- a/jck/build.xml
+++ b/jck/build.xml
@@ -46,15 +46,27 @@
-
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
diff --git a/openjdk_regression/ProblemList_openjdk11-openj9.txt b/openjdk_regression/ProblemList_openjdk11-openj9.txt
new file mode 100644
index 0000000000..4d6fd99a58
--- /dev/null
+++ b/openjdk_regression/ProblemList_openjdk11-openj9.txt
@@ -0,0 +1,103 @@
+############################################################################
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+############################################################################
+
+# jdk_awt
+
+############################################################################
+
+# jdk_beans
+
+############################################################################
+
+# jdk_lang
+
+############################################################################
+
+# jdk_management
+
+############################################################################
+
+# jdk_jmx
+
+############################################################################
+
+# jdk_math
+
+java/math/BigInteger/PrimeTest.java 440 linux_arm
+
+############################################################################
+
+# jdk_other
+
+############################################################################
+
+# jdk_net
+
+############################################################################
+
+# jdk_io
+
+############################################################################
+
+# jdk_jdi
+
+############################################################################
+
+# jdk_nio
+
+############################################################################
+
+# jdk_rmi
+
+############################################################################
+
+# jdk_security
+
+############################################################################
+
+# jdk_sound
+
+############################################################################
+
+# jdk_swing
+
+############################################################################
+
+# jdk_text
+
+############################################################################
+
+# jdk_time
+
+############################################################################
+
+# jdk_tools
+
+############################################################################
+
+# jdk_jdi
+
+############################################################################
+
+# jdk_util
+
+############################################################################
+
+# svc_tools
+
+############################################################################
+
+# jdk_other
+
+############################################################################
diff --git a/openjdk_regression/build.xml b/openjdk_regression/build.xml
index e63036d3bd..221ed8527d 100644
--- a/openjdk_regression/build.xml
+++ b/openjdk_regression/build.xml
@@ -32,6 +32,9 @@
+
+
+
diff --git a/openjdk_regression/openjdk11-openj9/TEST.ROOT b/openjdk_regression/openjdk11-openj9/TEST.ROOT
new file mode 100644
index 0000000000..fc6f017555
--- /dev/null
+++ b/openjdk_regression/openjdk11-openj9/TEST.ROOT
@@ -0,0 +1,59 @@
+# This file identifies the root of the test-suite hierarchy.
+# It also contains test-suite configuration information.
+
+# The list of keywords supported in the entire test suite. The
+# "intermittent" keyword marks tests known to fail intermittently.
+# The "randomness" keyword marks tests using randomness with test
+# cases differing from run to run. (A test using a fixed random seed
+# would not count as "randomness" by this definition.) Extra care
+# should be taken to handle test failures of intermittent or
+# randomness tests.
+#
+# A "headful" test requires a graphical environment to meaningfully
+# run. Tests that are not headful are "headless".
+# A test flagged with key "printer" requires a printer to succeed, else
+# throws a PrinterException or the like.
+
+keys=2d dnd headful i18n intermittent printer randomness jfr
+
+# Tests that must run in othervm mode
+othervm.dirs=java/awt java/beans javax/accessibility javax/imageio javax/sound javax/swing javax/print \
+com/apple/laf com/sun/java/accessibility com/sun/java/swing sanity/client demo/jfc \
+javax/management com/sun/awt sun/awt sun/java2d javax/xml/jaxp/testng/validation java/lang/ProcessHandle
+
+# Tests that cannot run concurrently
+exclusiveAccess.dirs=java/rmi/Naming java/util/prefs sun/management/jmxremote sun/tools/jstatd sun/security/mscapi java/util/stream java/util/Arrays/largeMemory java/util/BitSet/stream javax/rmi
+# Group definitions
+groups=TEST.groups
+
+# Allow querying of various System properties in @requires clauses
+#
+# Source files for classes that will be used at the beginning of each test suite run,
+# to determine additional characteristics of the system for use with the @requires tag.
+# Note: compiled bootlibs code will be located in the folder 'bootClasses'
+# requires.extraPropDefns = ../../test/jtreg-ext/requires/VMProps.java [../../closed/test/jtreg-ext/requires/VMPropsExt.java]
+# requires.extraPropDefns.bootlibs = ../../test/lib/sun ../../test/lib/jdk/test/lib/Platform.java
+# requires.extraPropDefns.vmOpts = -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:bootClasses
+#requires.properties= \
+# sun.arch.data.model \
+# java.runtime.name \
+# vm.gc.Z \
+# vm.graal.enabled \
+# vm.cds \
+# vm.hasSA \
+# vm.hasSAandCanAttach \
+# docker.support \
+# release.implementor
+
+# Minimum jtreg version
+requiredVersion=4.2 b12
+
+# Path to libraries in the topmost test directory. This is needed so @library
+# does not need ../../ notation to reach them
+external.lib.roots = ../../
+
+# Use new module options
+useNewOptions=true
+
+# Use --patch-module instead of -Xmodule:
+useNewPatchModule=true
diff --git a/openjdk_regression/playlist.xml b/openjdk_regression/playlist.xml
index 09adc224ae..8a7fb0e811 100644
--- a/openjdk_regression/playlist.xml
+++ b/openjdk_regression/playlist.xml
@@ -142,6 +142,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -166,6 +167,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -189,6 +191,7 @@
SE80
SE90
SE100
+ SE110
sanity
@@ -212,6 +215,7 @@
SE80
SE90
SE100
+ SE110
sanity
@@ -235,6 +239,7 @@
SE80
SE90
SE100
+ SE110
sanity
@@ -283,6 +288,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -306,6 +312,7 @@
SE80
SE90
SE100
+ SE110
sanity
@@ -329,6 +336,7 @@
SE80
SE90
SE100
+ SE110
sanity
@@ -352,6 +360,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -375,6 +384,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -398,6 +408,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -421,6 +432,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -445,6 +457,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -469,6 +482,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -492,6 +506,7 @@
SE80
SE90
SE100
+ SE110
sanity
@@ -515,6 +530,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -538,6 +554,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -561,6 +578,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -584,6 +602,7 @@
SE80
SE90
SE100
+ SE110
sanity
@@ -607,6 +626,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -630,6 +650,7 @@
SE80
SE90
SE100
+ SE110
extended
@@ -653,6 +674,7 @@
SE80
SE90
SE100
+ SE110
extended