summaryrefslogtreecommitdiff
path: root/tests/scripts/arm32_ci_script.sh
diff options
context:
space:
mode:
authorBruce Forstall <brucefo@microsoft.com>2018-03-02 11:29:29 -0800
committerBruce Forstall <brucefo@microsoft.com>2018-03-26 12:47:24 -0700
commit5952ead7831bf0a3c29424e927c58bfbb7d1380f (patch)
tree78070be2d338d51f744d6cae54bddc1260cad609 /tests/scripts/arm32_ci_script.sh
parent01835496c78c66e46c0770b5321c5f814168c58f (diff)
downloadcoreclr-5952ead7831bf0a3c29424e927c58bfbb7d1380f.tar.gz
coreclr-5952ead7831bf0a3c29424e927c58bfbb7d1380f.tar.bz2
coreclr-5952ead7831bf0a3c29424e927c58bfbb7d1380f.zip
Linux arm32 testing
Add support for arm Ubuntu testing on hardware. Most JIT stress jobs are enabled. GC stress jobs are not enabled currently (they haven't been tried yet). Most jobs have both PR trigger jobs as well as weekly "cron" jobs. Job frequency will be adjusted as we gain experience with the load. Initially, there are no automatically triggered PR jobs, but I plan to add one or more soon. Moved existing arm Ubuntu (on emulator) and arm Tizen (on emulator) to use new "armem" pseudo-architecture. The arm Ubuntu jobs have the product cross-built on Ubuntu/x64 in Docker, use tests built in a new Windows_NT x86 BuildOnly (`_bld`) job, and are run on hardware after copying over all the correct artifacts. Refactored lots of code related to determining if a particular combination of os/architecture/configuration/isPR/etc. should create a job. Refactored test/flow job creation. runtest.sh now creates three files based on test results that can be fed back to runtest.sh using the `--playlist` argument: coreclrtests.pass.txt, coreclrtests.fail.txt, coreclrtests.skip.txt. New script `runtesttilstable.sh` runs `runtest.sh` in a loop, rerunning failing tests until no tests fail, or a maximum iteration count is reached (default: 4). This works around existing issues with flaky test failures on Linux/arm32 hardware. Some extraneous unused jobs have been removed, such as unused `_bld` jobs and non-PR triggered `innerloop` jobs.
Diffstat (limited to 'tests/scripts/arm32_ci_script.sh')
-rwxr-xr-xtests/scripts/arm32_ci_script.sh32
1 files changed, 16 insertions, 16 deletions
diff --git a/tests/scripts/arm32_ci_script.sh b/tests/scripts/arm32_ci_script.sh
index aecb3e890a..3ffff2c9ab 100755
--- a/tests/scripts/arm32_ci_script.sh
+++ b/tests/scripts/arm32_ci_script.sh
@@ -183,21 +183,21 @@ function mount_emulator {
fi
if [ ! -d "$__ARMEmulRootfs" ]; then
- sudo mkdir "$__ARMEmulRootfs"
- fi
+ sudo mkdir "$__ARMEmulRootfs"
+ fi
- if [ ! -f "$__ARMEmulRootfs/arm-emulator-rootfs.tar" ]; then
- if mountpoint -q -- "$__ARMRootfsMountPath"; then
- sudo umount -l $__ARMRootfsMountPath
+ if [ ! -f "$__ARMEmulRootfs/arm-emulator-rootfs.tar" ]; then
+ if mountpoint -q -- "$__ARMRootfsMountPath"; then
+ sudo umount -l $__ARMRootfsMountPath
fi
- mount_with_checking "" "$__ARMEmulPath/platform/rootfs-t30.ext4" "$__ARMRootfsMountPath"
-
- cd $__ARMRootfsMountPath
- sudo tar -cf "$__ARMEmulRootfs/arm-emulator-rootfs.tar" *
- cd -
- fi
+ mount_with_checking "" "$__ARMEmulPath/platform/rootfs-t30.ext4" "$__ARMRootfsMountPath"
+
+ cd $__ARMRootfsMountPath
+ sudo tar -cf "$__ARMEmulRootfs/arm-emulator-rootfs.tar" *
+ cd -
+ fi
- sudo tar -xf "$__ARMEmulRootfs/arm-emulator-rootfs.tar" -C "$__ARMEmulRootfs"
+ sudo tar -xf "$__ARMEmulRootfs/arm-emulator-rootfs.tar" -C "$__ARMEmulRootfs"
mount_with_checking "-t proc" "/proc" "$__ARMEmulRootfs/proc"
mount_with_checking "-o bind" "/dev/" "$__ARMEmulRootfs/dev"
@@ -209,9 +209,9 @@ function mount_emulator {
fi
mount_with_checking "-o bind" "/mnt" "$__ARMEmulRootfs/bindings/tmp"
- if [ ! -d "$__ARMEmulRootfs/$__TempFolder" ]; then
+ if [ ! -d "$__ARMEmulRootfs/$__TempFolder" ]; then
sudo mkdir "$__ARMEmulRootfs/$__TempFolder"
- fi
+ fi
}
#Cross builds coreclr
@@ -354,7 +354,7 @@ function run_tests {
sudo chroot $__ARMEmulRootfs /bin/bash -x <<EOF
cd "$__ARMEmulCoreclr"
./tests/runtest.sh --sequential\
- --testRootDir=$__testRootDirBase \
+ --testRootDir=$__testRootDirBase \
--mscorlibDir=$__mscorlibDirBase \
--coreFxNativeBinDir=$__coreFxNativeBinDirBase \
--coreFxBinDir="$__coreFxBinDirBase" \
@@ -509,7 +509,7 @@ if [ "$__ciMode" == "emulator" ]; then
__skipTests=1
fi
-__coreFxBinDir="./bin/CoreFxBinDir" # TODO-clenup: Just for testing....
+__coreFxBinDir="./bin/CoreFxBinDir" # TODO-cleanup: Just for testing....
#Check if the optional arguments are present in the case that testing is to be done
if [ $__skipTests == 0 ]; then
exit_if_empty "$__testRootDir" "Testing requested, but --testRootDir not provided" true