From 7166b46f8dd4cf73bf449122b1050641e9534cf5 Mon Sep 17 00:00:00 2001 From: Ricardo Branco Date: Tue, 10 Mar 2026 15:08:03 +0100 Subject: [PATCH] test: use random host port for dind TLS build test Signed-off-by: Ricardo Branco --- pkg/e2e/build_test.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pkg/e2e/build_test.go b/pkg/e2e/build_test.go index 1fc3ac87667..38376d25bdc 100644 --- a/pkg/e2e/build_test.go +++ b/pkg/e2e/build_test.go @@ -604,7 +604,7 @@ func TestBuildTLS(t *testing.T) { c.RunDockerCmd(t, "context", "rm", dindBuilder) }) - c.RunDockerCmd(t, "run", "--name", dindBuilder, "--privileged", "-p", "2376:2376", "-d", "docker:dind") + c.RunDockerCmd(t, "run", "--name", dindBuilder, "--privileged", "-p", "127.0.0.1::2376", "-d", "docker:dind") poll.WaitOn(t, func(_ poll.LogT) poll.Result { res := c.RunDockerCmd(t, "logs", dindBuilder) @@ -617,14 +617,20 @@ func TestBuildTLS(t *testing.T) { time.Sleep(1 * time.Second) // wait for dind setup c.RunDockerCmd(t, "cp", dindBuilder+":/certs/client", tmp) + res := c.RunDockerCmd(t, "inspect", "-f", "{{(index (index .NetworkSettings.Ports \"2376/tcp\") 0).HostPort}}", dindBuilder) + hostPort := strings.TrimSpace(res.Stdout()) + if hostPort == "" { + t.Fatal("failed to resolve mapped host port for 2376/tcp") + } + c.RunDockerCmd(t, "context", "create", dindBuilder, "--docker", - fmt.Sprintf("host=tcp://localhost:2376,ca=%s/client/ca.pem,cert=%s/client/cert.pem,key=%s/client/key.pem,skip-tls-verify=1", tmp, tmp, tmp)) + fmt.Sprintf("host=tcp://127.0.0.1:%s,ca=%s/client/ca.pem,cert=%s/client/cert.pem,key=%s/client/key.pem,skip-tls-verify=1", hostPort, tmp, tmp, tmp)) cmd := c.NewDockerComposeCmd(t, "-f", "fixtures/build-test/minimal/compose.yaml", "build") cmd.Env = append(cmd.Env, "DOCKER_CONTEXT="+dindBuilder) cmd.Stdout = os.Stdout - res := icmd.RunCmd(cmd) - res.Assert(t, icmd.Expected{Err: "Built"}) + res2 := icmd.RunCmd(cmd) + res2.Assert(t, icmd.Expected{Err: "Built"}) } func TestBuildEscaped(t *testing.T) {