Commit Graph

47 Commits

Author SHA1 Message Date
Darren Tucker 3741df98ff Disable security key on fbsd6 test host. 2022-04-04 23:52:11 +10:00
Darren Tucker 32c12236f2 Specify TEST_SHELL=bash on AIX.
The system shells cause the agent-restrict test to fail due to some
quoting so explicitly specify bash until we can get configure to
autmatically work around that.
2022-04-04 15:16:51 +10:00
Darren Tucker 6c49eb5fab Only run regression tests on slow VMs. 2022-04-01 23:21:40 +11:00
Darren Tucker 5b054d7640 Skip slow tests on (very) slow test targets. 2022-04-01 13:16:47 +11:00
Darren Tucker d23efe4b12 Add OpenWRT mips and mipsel test targets. 2022-03-26 08:13:46 +11:00
Darren Tucker f2ff669347 No unused param warnings for clang-12 and gcc-11.
These have too many false positives in -Werror tests on the github CI
since we often provide empty stub functions for functionality not needed
for particular configurations.
2022-02-28 22:21:36 +11:00
Damien Miller 7c0d4ce911 disable agent-restrict test on minix3
Minix seems to have a platform-wide limit on the number of
select(2) syscalls that can be concurrently issued. This test
seems to exceed this limit.

Refer to:

https://github.com/Stichting-MINIX-Research-Foundation/minix/blob/R3.3.0/minix/servers/vfs/select.c#L114
https://github.com/Stichting-MINIX-Research-Foundation/minix/blob/R3.3.0/minix/servers/vfs/select.c#L30-L31
2022-02-22 11:14:51 +11:00
Darren Tucker 63bf4f49ed Add test configs for MUSL C library. 2022-02-18 12:12:21 +11:00
Darren Tucker 766176cfdb Add cygwin-release test config.
This tests the flags used to build the cygwin release binaries.
2022-02-12 10:24:56 +11:00
Darren Tucker 3fe6800b60 Move more tests out of valgrind-1 runner. 2022-01-20 00:49:57 +11:00
Darren Tucker 6c435bd499 Stop on first test failure to minimize logs. 2022-01-13 09:01:05 +11:00
Darren Tucker 5aefb05cd5 Update the list of tests that don't work on Minix.
While there, remove CC (configure will now find clang) and make the test
list easier to update via cut and paste.
2021-12-10 10:27:27 +11:00
Darren Tucker 4ae39cada2 Test both MIT KRB5 and Heimdal. 2021-10-22 22:54:33 +11:00
Darren Tucker 5a7a468750 Build with -Werror on most recent gcc and clang. 2021-10-21 15:18:34 +11:00
Darren Tucker d4b38144c0 Add tcmalloc test target. 2021-10-12 23:01:40 +11:00
Darren Tucker 52d4232b49 Disable security key on minix3.
The test doesn't work so disable.
2021-10-06 18:14:37 +11:00
Darren Tucker 8f4be526a3 Disable security key on NetBSD4 test.
sk-dummy used for the security key test includes both sha2.h and OpenSSL
causing the definitions conflict so disable security key support on this
platform.
2021-10-06 15:40:58 +11:00
Darren Tucker a3c6375555 Use backticks instead of $(..) for portability.
Older shells (eg /bin/sh on Solaris 10) don't support $() syntax.
2021-09-29 19:30:59 +10:00
Darren Tucker 958aaa0387 Skip file-based tests by default on Mac OS.
The file-based tests need OpenSSL so skip them.
2021-09-29 18:53:32 +10:00
Darren Tucker 55c8bdf6e9 Build without OpenSSL on Mac OS.
Modern versions don't ship enough libcrypto to build against.
2021-09-29 18:42:47 +10:00
Darren Tucker 5e6d28b787 Split c89 test openssl setting out. 2021-09-29 17:48:09 +10:00
Darren Tucker 360fb41ef8 Test all available clang and gcc versions. 2021-09-29 12:05:50 +10:00
Darren Tucker 20e6eefcdf Skip agent ptrace test on hurd. 2021-08-15 23:25:26 +10:00
Darren Tucker 7c9115bbbf Add hurd test target. 2021-08-15 19:37:22 +10:00
Darren Tucker 7909a566f6 Skip scp3 tests on all dfly58 and 60 configs. 2021-08-15 12:45:10 +10:00
Darren Tucker e0ba38861c Skip scp3 test on dragonfly 58 and 60.
The tests hang, so skip until we figure them out.
2021-08-13 13:00:14 +10:00
Darren Tucker 7a3a1dd2c7 Put minix3 config in the host-specific block. 2021-06-01 09:38:26 +10:00
Darren Tucker 2063af7142 Add minix3 test target. 2021-05-27 21:13:38 +10:00
Darren Tucker 7753260987 Export CC and CFLAGS for c89 test. 2021-04-26 17:20:23 +10:00
Darren Tucker 29e194a752 Ensure we can still build with C89. 2021-04-26 14:50:58 +10:00
Darren Tucker a38016d369 Interop test agains PuTTY. 2021-04-26 14:50:58 +10:00
Darren Tucker 095b0307a7 Support testing against arbitary libcrytpo vers.
Add tests against various LibreSSL and OpenSSL versions.
2021-04-26 14:50:44 +10:00
Darren Tucker 2c805f16b2 Disable compiler hardening on nbsd4.
The system compiler supports -fstack-protector-all, but using it will
result in an internal compiler error on some files.
2021-04-25 14:15:02 +10:00
Darren Tucker 3fe7e73b02 Test krb5 on Solaris 11 too. 2021-04-23 10:26:35 +10:00
Darren Tucker cb4ff640d7 Add win10 test target. 2021-04-22 22:29:33 +10:00
Darren Tucker f42b550c28 Add pattern for valgrind-unit. 2021-04-08 14:20:12 +10:00
Darren Tucker 19e5344627 Run unit tests under valgrind.
Run a separate build for the unit tests under Valgrind.  They take long
enough that running in parallel with the other Valgrind tests helps.
2021-04-08 13:35:14 +10:00
Darren Tucker 3674e33fa7 Further split Valgrind tests.
Even split in two, the Valgrind tests take by far the longest to run,
so split them four ways to further increase parallelism.
2021-04-07 17:02:27 +10:00
Darren Tucker ffcdd3d90e Valgrind test: split and move up list.
Since the valgrind test takes so long it approaches the limit allowed by
github, move it to the head of the list so it's the first one started and
split the longest tests out into a second instance that runs concurrently
with the first.
2021-02-23 11:18:49 +11:00
Darren Tucker 5fcb051494 Disable rlimit sandbox, doesn't work with valgrind
Only run regress tests, runing unit tests as well makes it run longer
than allowed y github.
2021-02-21 15:39:01 +11:00
Darren Tucker e9f6d563c0 Actually run Valgrind tests. 2021-02-19 10:20:17 +11:00
Darren Tucker 41d232e226 Add test against Valgrind. 2021-02-19 10:16:56 +11:00
Darren Tucker 93c31a6239 Add DEBUG_SK to kitchensink builds. 2021-02-18 14:54:07 +11:00
Darren Tucker bc9b0c2570 Skip unit tests on sol11 to speed things up. 2021-02-18 10:10:00 +11:00
Darren Tucker 4582612e61 Merge macos and ubuntu tests. 2021-02-17 20:46:03 +11:00
Darren Tucker 09f4b84654 Convert most github hosted tests to new config structure. 2021-02-17 20:46:03 +11:00
Darren Tucker f031366535 Add self-hosted runners for VMs of other platforms.
Github only hosts a limited number of platforms, and the runner code
is only supported on slightly wider range of platforms.  To increase
our test coverage beyond that, we run the runner natively on a VM host,
where it runs a jobs that boot VMs of other platforms, waits for them
to come up then runs the build and test by ssh'ing into the guest.
This means that the minimum dependencies for the guests are quite low
(basically just sshd, a compiler and make).

The interface to the VM host is fairly simple (basically 3 scripts:
vmstartup, vmrun and vmshutdown), but those are specific to the VM host
so are not in the public repo.  We also mount the working directory on the
host via sshfs, so things like artifact upload by the runner also work.

As part of this we are moving the per-test-target configs into a single
place (.github/configs) where there will be referenced by a single short
"config" key.  I plan to make the github-hosted runners use this too.

The self-hosted runners are run off a private repo on github since that
prevents third parties from accessing them[0], and since runner quota is
limited on private repos, we avoid running the tests we run on the public
repo.

[0] https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories
2021-02-17 18:20:40 +11:00