Centralizes the following images into agnhost:
- dnsutils
- mounttest
- resource-consumer-controller
- test-webserver
Adds CoreDNS to agnhost image, which can be used in some DNS related tests (dnsmasq is Linux-only).
Adds Windows support to mounttest.
Bumps agnhost version to 2.9.
Bumps kitten version to 1.1.
Bumps nautilus version to 1.1.
The redis version has been bumped to version 5.0.5, but the maximum version supported on
Windows is 3.2. This can lead to failing tests, the output and behaviour can be different
(see #80516). In order to prevent such failures, the amount of times the Redis image is
used can be reduced.
This commit adds the guestbook subcommand to agnhost, which can be used to emulate the
Guestbook application created by the test "should create and stop a working application".
Bumps agnhost image VERSION.
Currently, the UDP buffer sizes are set to 1024 bytes. Larger requests will not be
read entirely by the UDP handlers, which can lead to tests relying on this to fail.
Adds bind-tools to the agnhost image. With this, dig will available
in the agnhost image, which can be used in DNS related tests.
Adds the --version flag to the agnhost binary, which will be useful for
debugging purposes (e.g.: when the image version does not match the binary
version).
Bumps version to 2.5.
Refactors the functions used in agnhost into different modules,
based on their functionality, leaving only the main in the base
folder.
Future commits will add several functionalities to agnhost, so
this change will be necessary to keep it clean.
Adds the following subcommands to the agnhost binary:
- dns-server-list: outputs the host's DNS server list with which it was
configured with. This can be found in /etc/resolv.conf on Linux and
through some powershell commands on Windows.
- etc-hosts: outputs the host's hosts file. This can be found in /etc/hosts
for Linux, and C:/Windows/System32/drivers/etc/hosts for Windows.
- pause: pauses the binary's execution. This can be used to keep the Pod in
a Running state for various reasons, including executing additional agnhost
commands.
Refactors bits of the code to avoid duplication.
Adds a README for the agnhost image.
The new image is meant to be used for testing purposes, whenever there
are significant differences between Linux and Windows in the way
something is obtained or tested. For example, the DNS suffix list can
be found in ``/etc/resolv.conf`` on Linux, but on Windows, such file
does not exist, and one way to obtain the mentioned list would be
through some powershell commands.
The image contains an extendable CLI as the entrypoint, the tests
only having to add the necessary arguments. For the previous example,
passing the ``dns-suffix`` argument will print out the comma separated
DNS suffix list, on both Linux and Windows.
The image name means that it should behave the same way on any host,
no matter the host OS.