]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
Further split Valgrind tests.
authorDarren Tucker <dtucker@dtucker.net>
Wed, 7 Apr 2021 00:05:10 +0000 (10:05 +1000)
committerDarren Tucker <dtucker@dtucker.net>
Wed, 7 Apr 2021 07:02:27 +0000 (17:02 +1000)
Even split in two, the Valgrind tests take by far the longest to run,
so split them four ways to further increase parallelism.

.github/configs
.github/workflows/c-cpp.yml

index 1c06e00d110c997a1199157ea27bcf8b89b123fe..87c7a6dc213a2ddb84e6c422840abf420fc6cefb 100755 (executable)
@@ -56,22 +56,35 @@ case "$config" in
        LIBCRYPTOFLAGS="--without-openssl"
        TEST_TARGET=t-exec
        ;;
-    valgrind-1)
+    valgrind-[1-4])
        # rlimit sandbox and FORTIFY_SOURCE confuse Valgrind.
        CONFIGFLAGS="--without-sandbox --without-hardening"
        CONFIGFLAGS="$CONFIGFLAGS --with-cppflags=-D_FORTIFY_SOURCE=0"
+       TEST_TARGET="t-exec USE_VALGRIND=1"
+       TEST_SSH_ELAPSED_TIMES=1
+       export TEST_SSH_ELAPSED_TIMES
        # Valgrind slows things down enough that the agent timeout test
        # won't reliably pass, and the unit tests run longer than allowed
-       # by github.
-       TEST_TARGET="t-exec USE_VALGRIND=1"
-       SKIP_LTESTS="agent-timeout rekey try-ciphers cert-userkey integrity"
-       ;;
-    valgrind-2)
-       CONFIGFLAGS="--without-sandbox --without-hardening"
-       CONFIGFLAGS="$CONFIGFLAGS --with-cppflags=-D_FORTIFY_SOURCE=0"
-       # The rekey test takes >30 min so run separately.
-       TEST_TARGET="t-exec USE_VALGRIND=1"
-       LTESTS="rekey try-ciphers cert-userkey integrity"
+       # by github so split into three separate tests.
+       tests2="rekey integrity"
+       tests3="krl forward-control sshsig"
+       tests4="cert-userkey cert-hostkey kextype sftp-perm keygen-comment"
+       case "$config" in
+           valgrind-1)
+               # All tests except agent-timeout (which is flaky under valgrind)
+               #) and slow ones that run separately to increase parallelism.
+               SKIP_LTESTS="agent-timeout ${tests2} ${tests3} ${tests4}"
+               ;;
+           valgrind-2)
+               LTESTS="${tests2}"
+               ;;
+           valgrind-3)
+               LTESTS="${tests3}"
+               ;;
+           valgrind-4)
+               LTESTS="${tests4}"
+               ;;
+       esac
        ;;
     *)
        echo "Unknown configuration $config"
index 0e427f9003b0b1a2d145e6ebec80cc0fda1e79b7..a712af7c2189f0e91d57a066c18bbcd7ae2e7b38 100644 (file)
@@ -20,6 +20,8 @@ jobs:
         include:
           - { os: ubuntu-20.04, configs: valgrind-1 }
           - { os: ubuntu-20.04, configs: valgrind-2 }
+          - { os: ubuntu-20.04, configs: valgrind-3 }
+          - { os: ubuntu-20.04, configs: valgrind-4 }
           - { os: ubuntu-20.04, configs: pam }
           - { os: ubuntu-20.04, configs: kitchensink }
           - { os: ubuntu-20.04, configs: hardenedmalloc }