Skip to content

Conversation

@jajik
Copy link
Member

@jajik jajik commented Nov 11, 2025

This is a bigger PR but because of the nature of changes, there is not much what to do about it (I've already dropped some changes for future PRs).

The main thing is that host network is no longer used in containerized tests. This allows us to use DNS, isolate tests to a different network (minimizing conflicts with other running services).

In points:

  • uses docker/podman custom network instead of host network
  • leverages DNS instead of IPs/localhost
  • separates UseAlias test from maintests (and UseAlias is not enabled by default in the rest of the tests)
  • reworks and improves containers provisioning (gets rid of some old limitations, makes configurable things that make sense, drops support for things we were not using)
  • minor tweaks and fixes (POSIX operators, drop unnecessary/failing commands, tweak log levels, fix typos, etc.)

close #348

@jajik jajik requested review from rhusar and removed request for rhusar November 11, 2025 13:34
@jajik jajik requested review from jfclere and rhusar November 11, 2025 15:09
@jajik jajik force-pushed the issue-348 branch 2 times, most recently from 077e824 to ef99b9f Compare November 13, 2025 09:46
Copy link
Member

@jfclere jfclere left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem is more the mix of variable set + call of function on the same line and variable set in several line and then the call of the function. We should use a single one and prefer a single line set + calls (more easy to maintain.

@jajik jajik requested a review from jfclere November 13, 2025 14:10
jajik added 13 commits November 21, 2025 10:20
Set HostNameLookups On to get hostname in %{REMOTE_HOST}, no IP

Drop hardcoded IP addresses, no localhost (except client <-> proxy)

Tomcat container now does not exit when tomcat process is stopped

Minor files & format clean ups
Containers are now using custom docker network with DNS

Containers are now using their container names instead of localhost/IPs

Parameters/Options now reflect the actual usage
Shift tomcat ports where conflicts might lead to random test failures

Code and format clean ups
Also test a little bit more than before

UseAlias is not enabled by default in the rest of the testsuite now
Unfortunately, custom podman networks do not support rDNS so tomcat
requests are handled by their IP. This causes our `Require host` to
not work which leads to test failures.

Upon httpd container start, we try to detect podman and if needed,
we change `Require host` to `Require ip`.
Before all configuration variables will be moved at the beginning.
@jajik
Copy link
Member Author

jajik commented Nov 21, 2025

(rebase)

Copy link
Member

@jfclere jfclere left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Look OK for me.

@jajik
Copy link
Member Author

jajik commented Nov 25, 2025

Thanks for the review!

@jajik jajik merged commit 78488af into modcluster:main Nov 25, 2025
29 of 30 checks passed
@jajik jajik deleted the issue-348 branch November 25, 2025 14:31
@rhusar
Copy link
Member

rhusar commented Nov 25, 2025

Thanks @jajik and @jfclere !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use custom docker network instead of host in the testsuite

3 participants