Some old tests are carried out via the nettester tool. This was
our initial shot at a testbench a couple of years ago. While it
worked back then, the testbench framework has been much enhanced.
These old tests are nowadays very hard to handle, as they miss
debug support etc. So it is time to refactor them to new style.
As a side-activity, the testbench plumbing has been enhanced to
support some operations commonly needed by these tests. Contrary
to pre-existing plumbing, these new operations are now crafted
using bash functions, which we consider superior to the current
method. So this is also the start of converting the older-style
functionality into bash functions. We just did this now because
it was required and we entangled it into the test refactoring
because it was really needed. Else we had to write old-style
operations and convert them in another commit, which would
have been a waste of time.
Special thanks to Pascal Withopf for the initial step of taking
old tests and putting config as well as test data together into
the refactored tests, on which Rainer Gerhards than could build
to create the new tests and update testbench plumbing.
This is now more along the lines of what bash does. We now support
multiple environment variable expansions as well as constant text
between them.
example:
env SOMEPATH is set to "/var/log/custompath"
config is: param=`echo $SOMEPATH/myfile`
param than is expaned to "/var/log/custompath/myfile"
among others, this is also needed inside the testbench to properly
support "make distcheck".
Note: testbench tests follows via separate commit. There will be
no special test, as the testbench itself requires the functionality
at several places, so the coverage will be very good even without
a dedicated test.
Message modification modules do not work if used with a non-direct queue.
We now make this more explicit in the config parsing error message.
closes https://github.com/rsyslog/rsyslog/issues/1323
We originally merged master into the PR. At that time, github did not
(reliably?) provide a merged code basis. This is now the case, so the
test is kind of unnecessary. It only did some good if master was updated
after PR submission but before Travis started the test. This is pretty
unlikely, so we remove that test - which also is a relief in regard
to Travis runtime.
see also https://github.com/rsyslog/rsyslog/issues/2800
This provides a new-style alternative to $AbortOnUncleanConfig.
Note that a testbench test was changed to the new syntax. Adding
an additional test did not look useful, as the testbench still
sufficiently tests old and new method.
closes https://github.com/rsyslog/rsyslog/issues/2744
veeeeery old testing capability, no longer functional but
causes build to fail if enabled. Replaced by ASAN/valgrind.
Issue detected while testing some other CI settings.
We now inlcude the module name (e.g. "omelasticsearch" or "builtin:omfile")
as part of the name. This is still not perfect, but hopefully a bit
easier to grasp.
see also https://github.com/rsyslog/rsyslog/issues/342
While older GnuTLS versions do use gcrypt, newer version no longer do.
From
https://www.gnutls.org/manual/html_node/Cryptographic-Backend.html
"
Cryptographic library layer
The Cryptographic library layer, currently supports only libnettle.
Older versions of GnuTLS used to support libgcrypt, but it was switched
with nettle mainly for performance reasons and secondary because it is
a simpler library to use. In the future other cryptographic libraries
might be supported as well.
"