CI/CD overhaul
- May 13, 2024
-
-
Oto Šťáva authored
It used to just throw BrokenPipeError, but newer versions of Python have a separate exception for when the connection is closed in violation of TLS rules, which Knot Resolver does deliberately so as to not waste time on properly closing TLS connections with misbehaving peers.
-
Oto Šťáva authored
This commit makes lots of changes to the C code to appease the Clang-Tidy linter. Some of the less obvious ones are due to C's weird semantics regarding handling of numeric literals. We also disable a bunch of the detections because they are super-pedantic, arguably useless, or we have our own unwritten coding style rules that solve the issues.
-
Oto Šťáva authored
This is the bulk of the CI/CD overhaul. Most of the changes are to the `.gitlab-ci.yml` file, where the build images used are replaced with the ones provided by the `knot-resolver-ci` repository. Some cleanups have also been done. The commit also adds unit testing with Knot Resolver built against multiple versions of Knot DNS, including the `master` branch. The `master` branch image is built nightly in the `knot-resolver-ci` repo. We have also removed `scan-build`, as its tests change frequently, with lots of false-positives, which are very different on each version, and there is no good way to ignore some detections. Clang-Tidy covers some of the same issues, and we also have Coverity Scan. Should be more than enough. A few config tests were also excluded in the AddressSanitizer tests, because they produce false-positives.
-