Evan Hunt [Fri, 23 Feb 2018 18:47:04 +0000 (10:47 -0800)]
more CI speedup experiments
- turn off some of the build tests
- increase test threads to 8
- build with --disable-static
- suppress the non-system tests under bin/tests (timers, task, etc)
Evan Hunt [Fri, 23 Feb 2018 18:08:51 +0000 (10:08 -0800)]
improve dyndb test resilience
- no longer grep for specific line numbers when checking
parameter logging, as those can change
- report the failure immediatey if parameter check fails
Evan Hunt [Thu, 22 Feb 2018 23:10:37 +0000 (15:10 -0800)]
final cleanup
- add CHANGES note
- update copyrights and license headers
- add -j to the make commands in .gitlab-ci.yml to take
advantage of parallelization in the gitlab CI process
Petr Menšík [Thu, 22 Feb 2018 14:32:16 +0000 (15:32 +0100)]
unit/unittest.sh is generated by configure. It will always be
generated into builddir. If out-of-tree build is used, make unit
will always fail. Kyuafiles and testdata still have to be copied
manually into the builddir.
Michał Kępień [Tue, 20 Feb 2018 12:59:29 +0000 (13:59 +0100)]
Improve the way cache contents are searched for "ns.flushtest.example"
During the "check flushtree clears adb correctly" check, expecting
"ns.flushtest.example" to always be the first name in the ADB dump is
fragile, because in a certain corner case "a.root-servers.nil" will be
the first name instead.
As the purpose of the relevant check is to ensure "ns.flushtest.example"
is removed from ADB by "rndc flushtree flushtest.example", search the
entire list of names present in ADB instead of just the first entry when
looking for "ns.flushtest.example".
Michał Kępień [Tue, 20 Feb 2018 12:59:28 +0000 (13:59 +0100)]
Wait until a cache dump completes instead of waiting for a fixed amount of time
Dumping the cache is an asynchronous operation, so sleeping for a fixed
amount of time after running "rndc dumpdb" is imperfect as dumping cache
contents may take longer than expected on slower machines. Instead of
always sleeping for 1 second, wait until the "; Dump complete" line
appears in the dump or 10 seconds pass, whichever comes first.
Michał Kępień [Tue, 20 Feb 2018 12:59:27 +0000 (13:59 +0100)]
Do not overwrite cache dumps
Unless configured otherwise in named.conf, "rndc dumpdb" causes a cache
dump to be written to a file called "named_dump.db" in the working
directory of the given named instance. Repeatedly using this command
throughout different checks in the cacheclean system test causes cache
dumps for older checks to be overwritten, which hinders failure
diagnosis. Prevent this by moving each cache dump to a check-specific
location after running "rndc dumpdb".
Furthermore, during the "check flushtree clears adb correctly" check,
dump_cache() is called twice without renaming the resulting files.
Prevent the first cache dump from being overwritten by moving it to a
different file before calling "rndc dumpdb" for the second time.
Stephen Morris [Fri, 26 Jan 2018 19:42:57 +0000 (19:42 +0000)]
[rt46602] Changes to get tests running on Windows
1. Track changes to conf.sh.in in conf.sh.win32
2. Modifications to prevent Windows "Configure" script replacing
the sed "@PORT@" substitution tokens in conf.sh.win32.
3. runall.sh now runs Windows tests sequentially
Stephen Morris [Thu, 15 Feb 2018 15:55:57 +0000 (15:55 +0000)]
[rt46602] Change name of shell variable holding current test directory
It was TESTNAME, but this is an obvious name and was used in one of
the system tests, something that interfered with the content of
progress messages. It is now SYSTESTDIR.
Michał Kępień [Fri, 26 Jan 2018 12:46:46 +0000 (13:46 +0100)]
[rt46602] Re-add clean.sh invocation to catz/setup.sh
Commit 57aa7b60fd caused catz/setup.sh to no longer call clean.sh, which
results in the catz system test failing on subsequent runs if the first
run is interrupted or fails.
Stephen Morris [Thu, 25 Jan 2018 14:45:49 +0000 (14:45 +0000)]
[rt46602] Escape line ends in shell script variable assignment
Escape the line ends in a multi-line variable assignment. Under some
circumstances, substituting the variable caused syntax errors when
used as the list of values in a shell script "for" statement.
Stephen Morris [Fri, 15 Dec 2017 15:56:33 +0000 (15:56 +0000)]
[rt46602] Ensure test output in systests.output is not mixed up
When running all the system tests, output from a test is sent to a
test.output file in the test directory. These are combined in to
systests.output when the run finishes.
Stephen Morris [Thu, 23 Nov 2017 10:02:15 +0000 (10:02 +0000)]
[rt46602] Tidy up run management
Miscellaneous tidying up of run management. The most significant
change is that "runall.sh" now runs _all_ the tests, even the
ones that can run in parallel. runsequential.sh is the script
to run tests that have not been converted to parallel running.
Stephen Morris [Thu, 23 Nov 2017 09:58:57 +0000 (09:58 +0000)]
[rt46602] Assign block of ports for each test
Some tests use more ports than just the query and control ports.
Each test that can run in parallel with other tests is now assigned
a unique block of 10 ports.