From b03b57cf8b16d4ee9b524b8ea2db94b683b7f891 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Reis?= Date: Thu, 23 Jul 2020 20:41:22 +0100 Subject: [PATCH] jenkins: add ARM64 Windows PR-URL: https://github.com/nodejs/build/pull/2408 Reviewed-By: Rod Vagg Reviewed-By: Ash Cripps Reviewed-By: Richard Lau Reviewed-By: James M Snell --- jenkins/scripts/VersionSelectorScript.groovy | 10 +++++++++- jenkins/scripts/windows/compile.cmd | 5 ++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/jenkins/scripts/VersionSelectorScript.groovy b/jenkins/scripts/VersionSelectorScript.groovy index de9121619..63a6f34f8 100644 --- a/jenkins/scripts/VersionSelectorScript.groovy +++ b/jenkins/scripts/VersionSelectorScript.groovy @@ -65,9 +65,10 @@ def buildExclusions = [ [ /vcbt2015(-\w+)?$/, testType, gte(10) ], [ /vs2017(-\w+)?$/, testType, ltGte(8, 15) ], [ /vs2019(-\w+)?$/, testType, lt(13) ], - [ /vs2015-x86$/, testType, gte(10) ], // compile x86 only once + [ /vs2015-x86$/, testType, gte(10) ], // compile arm64/x86 only once [ /vs2017-x86$/, testType, ltGte(10, 14) ], [ /vs2019-x86$/, testType, lt(14) ], + [ /vs2019-arm64$/, testType, lt(14) ], // VS versions supported to build add-ons [ /vs2013-COMPILED_BY/, testType, gte(9) ], [ /vs2015-COMPILED_BY/, testType, noVer ], @@ -164,5 +165,12 @@ combinations.each{ return } } + // Run tests on Windows ARM64 only if explicitly requested + if (builderLabel =~ /^win.*COMPILED_BY.*-arm64$/) { + if (!parameters['RUN_ARM64_TESTS'].toString().equalsIgnoreCase("true")){ + println "Skipping $builderLabel because RUN_ARM64_TESTS is not selected" + return + } + } result['nodes'].add(it) } diff --git a/jenkins/scripts/windows/compile.cmd b/jenkins/scripts/windows/compile.cmd index dee51592f..f4b945457 100644 --- a/jenkins/scripts/windows/compile.cmd +++ b/jenkins/scripts/windows/compile.cmd @@ -18,7 +18,10 @@ if not defined DISABLE_CLCACHE if exist C:\clcache\dist\clcache_main\clcache_mai ) :: Call vcbuild -if "%nodes:~-4%" == "-x86" ( +if "%nodes:~-6%" == "-arm64" ( + :: Building MSI is not yet supported for ARM64 + set "VCBUILD_EXTRA_ARGS=arm64 release" +) else if "%nodes:~-4%" == "-x86" ( set "VCBUILD_EXTRA_ARGS=x86 %VCBUILD_EXTRA_ARGS%" ) else ( set "VCBUILD_EXTRA_ARGS=x64 %VCBUILD_EXTRA_ARGS%"