diff options
author | Bruce Forstall <brucefo@microsoft.com> | 2018-03-02 11:29:29 -0800 |
---|---|---|
committer | Bruce Forstall <brucefo@microsoft.com> | 2018-03-26 12:47:24 -0700 |
commit | 5952ead7831bf0a3c29424e927c58bfbb7d1380f (patch) | |
tree | 78070be2d338d51f744d6cae54bddc1260cad609 /tests/scripts/arm32_ci_script.sh | |
parent | 01835496c78c66e46c0770b5321c5f814168c58f (diff) | |
download | coreclr-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-x | tests/scripts/arm32_ci_script.sh | 32 |
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 |