diff --git a/JenkinsJobs/AutomatedTests/I_unit_win32.groovy b/JenkinsJobs/AutomatedTests/I_unit_win32.groovy index a6aa6eab71a..74344d32d0d 100644 --- a/JenkinsJobs/AutomatedTests/I_unit_win32.groovy +++ b/JenkinsJobs/AutomatedTests/I_unit_win32.groovy @@ -1,11 +1,17 @@ def config = new groovy.json.JsonSlurper().parseText(readFileFromWorkspace('JenkinsJobs/JobDSL.json')) def STREAMS = config.Streams +def BUILD_CONFIGURATIONS = [ + [arch: 'aarch64', javaVersion: '21', agentLabel: 'rie8t-win11-arm64', javaHome: 'C:\\\\Program Files (Arm)\\\\Microsoft\\\\jdk-21.0.2.13-hotspot' ] + [arch: 'x86_64', javaVersion: '17', agentLabel: 'qa6xd-win11', javaHome: 'C:\\\\Program Files\\\\Eclipse Adoptium\\\\jdk-17.0.11+9' ] +] + for (STREAM in STREAMS){ +for (BUILD_CONFIG in BUILD_CONFIGURATIONS){ def MAJOR = STREAM.split('\\.')[0] def MINOR = STREAM.split('\\.')[1] - pipelineJob('AutomatedTests/ep' + MAJOR + MINOR + 'I-unit-win32-x86_64-java17'){ + pipelineJob('AutomatedTests/ep' + MAJOR + MINOR + 'I-unit-win32-' + BUILD_CONFIG.arch + '-java' + BUILD_CONFIG.javaVersion){ description('Run Eclipse SDK Tests for the platform implied by this job\'s name') parameters { // Define parameters in job configuration to make them available from the very first build onwards stringParam('buildId', null, 'Build Id to test (such as I20240611-1800, N20120716-0800).') @@ -22,17 +28,18 @@ pipeline { buildDiscarder(logRotator(numToKeepStr:'5')) } agent { - label 'qa6xd-win11' + label \'''' + BUILD_CONFIG.agentLabel + '''\' } stages { stage('Run tests'){ environment { // Declaring a jdk and ant the usual way in the 'tools' section, because of unknown reasons, breaks the usage of system commands like xvnc, pkill and sh - JAVA_HOME = 'C:\\\\Program Files\\\\Eclipse Adoptium\\\\jdk-17.0.11+9' + JAVA_HOME = \'''' + BUILD_CONFIG.javaHome + '''\' ANT_HOME = tool(type:'ant', name:'apache-ant-latest') PATH = "${JAVA_HOME}\\\\bin;${ANT_HOME}\\\\bin;${PATH}" ANT_OPTS = "-Djava.io.tmpdir=${WORKSPACE}\\\\tmp -Djava.security.manager=allow" + eclipseArch = \'''' + BUILD_CONFIG.arch + '''' } steps { cleanWs() // workspace not cleaned by default @@ -65,7 +72,7 @@ java -XshowSettings -version 1>javaSettings.txt 2>&1 ant -f getEBuilder.xml -DbuildId=%buildId% -DeclipseStream=%STREAM% -DEBUILDER_HASH=%EBUILDER_HASH% ^ -DdownloadURL="https://download.eclipse.org/eclipse/downloads/drops4/%buildId%" ^ - -Dargs=all -Dosgi.os=win32 -Dosgi.ws=win32 -Dosgi.arch=x86_64 ^ + -Dargs=all -Dosgi.os=win32 -Dosgi.ws=win32 -Dosgi.arch=%eclipseArch% ^ -DtestSuite=all @REM For smaller test-suites see: https://github.com/eclipse-platform/eclipse.platform.releng.aggregator/blob/be721e33c916b03c342e7b6f334220c6124946f8/production/testScripts/configuration/sdk.tests/testScripts/test.xml#L1893-L1903 \'\'\' @@ -85,3 +92,4 @@ ant -f getEBuilder.xml -DbuildId=%buildId% -DeclipseStream=%STREAM% -DEBUILDER_ } } } +}