path: root/
diff options
authorBruce Forstall <>2018-08-22 20:55:53 (GMT)
committerBruce Forstall <>2018-09-19 18:34:28 (GMT)
commit707e84e98920546264db5af4252509a3a54f6203 (patch)
tree13cdbc5268758fbb063f1c481c028062c1be81f8 /
parent541f710095b6c10f2e650ad68e3f5961aa467d02 (diff)
Enable arm64 Linux testing in CI
Testing is enabled on a set of Qualcomm Centriq arm64 servers running Ubuntu 16.04. The set of jobs enabled almost matches the set run for arm32 Linux testing, including innerloop, JIT and GC Stress, corefx, and R2R. Temporarily, the innerloop jobs are commit jobs (invoked when a PR is merged) instead of "default trigger" jobs (invoked when a PR is submitted), until we get more experience with the robustness of the machines and jobs. The machines are fast enough that they are not marked as "limited hardware" (like arm32 Linux machines). That means that many jobs are run daily, not weekly, as periodic jobs. Notes about the changes: 1. The Linux arm64 machines are managed by Helix, which allocates them to Jenkins. 2. The arm64 OS used has been renamed from "small_page_size" to "Ubuntu16.04". If we add large page size machines, we'll need to add a differentiator. 3. The Jenkins "copy artifacts" plug-in runs ridiculously slowly on this hardware, for unknown reasons, so we copy artifacts directly using "wget". 4. Tests are built using "" on the (cross) build machine; we don't use Windows-built tests. 5. Added Jenkins archiving of build .log/.wrn/.err files. 6. Various tests were disabled in issues.targets, and with a new arm64/corefx_linux_test_exclusions.txt file, to get jobs to run clean. (Several issues have been opened to track these and other known failures.)
Diffstat (limited to '')
1 files changed, 3 insertions, 2 deletions
diff --git a/ b/
index 1652f98..8ae1e4c 100755
--- a/
+++ b/
@@ -476,8 +476,9 @@ build_native_projects()
pushd "$intermediatesForBuild"
# Regenerate the CMake solution
- echo "Invoking \"$__ProjectRoot/src/pal/tools/\" \"$__TestDir\" $__ClangMajorVersion $__ClangMinorVersion $platformArch $__BuildType $__CodeCoverage $generator $extraCmakeArguments $__cmakeargs"
- "$__ProjectRoot/src/pal/tools/" "$__TestDir" $__ClangMajorVersion $__ClangMinorVersion $platformArch $__BuildType $__CodeCoverage $generator "$extraCmakeArguments" "$__cmakeargs"
+ # Force cross dir to point to project root cross dir, in case there is a cross build.
+ echo "Invoking CONFIG_DIR=\"$__ProjectRoot/cross\" \"$__ProjectRoot/src/pal/tools/\" \"$__TestDir\" $__ClangMajorVersion $__ClangMinorVersion $platformArch $__BuildType $__CodeCoverage $generator $extraCmakeArguments $__cmakeargs"
+ CONFIG_DIR="$__ProjectRoot/cross" "$__ProjectRoot/src/pal/tools/" "$__TestDir" $__ClangMajorVersion $__ClangMinorVersion $platformArch $__BuildType $__CodeCoverage $generator "$extraCmakeArguments" "$__cmakeargs"