Open
Description
Problem
I want to configure PortForwardingContainer
so that I can add custom logger to the TestContainer that is used by ExposeHostPortsAsync
.
Current code:
await TestcontainersSettings.ExposeHostPortsAsync(3050);
Expected code:
await PortForwardingSettings.Configure(builder =>
{
var logger = GetLogger<PortForwardingContainer>();
return builder
.WithLogger(logger);
}).ExposeHostPortsAsync(3050);
Solution
Proposed solutions:
- Expose
PortForwardingContainer
frominternal
topublic
so that configuration can be made on a instance, and split Instance from Build so that builder can be preconfigured - Expose
OptionsBuilder
viaExposeHostPortsAsync
- Add new endpoint that allows for
ConfigureExposeHostPorts
Benefit
I can redirect all the logs and monitor what is happening via logger of my choice
Alternatives
I tried to copy PortForwardingContainer
and all necessary classes from the source repository and use them with configuration instead of TestcontainersSettings.ExposeHostPortsAsync
but it doesn't seem to be working.
sshd image is created, but /etc/hosts is not modified and there is lack of documentation or code reference on why is that. The only part I changed is to expose the builder part of the container.
Would you like to help contributing this enhancement?
Yes