From 1efd456bcf670b7c0e1d719c16255f55fbe4cab3 Mon Sep 17 00:00:00 2001 From: Casey Callendrello Date: Tue, 30 Mar 2021 16:41:06 +0200 Subject: [PATCH] test/e2e: handle ipv6 addresses in netpol tests The tests, as written, don't correctly join ip and port for v6 addresses. use net.JoinHostPort to handle this case. --- test/e2e/network/netpol/kubemanager.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/test/e2e/network/netpol/kubemanager.go b/test/e2e/network/netpol/kubemanager.go index 08dad13e2b1..da60aebff18 100644 --- a/test/e2e/network/netpol/kubemanager.go +++ b/test/e2e/network/netpol/kubemanager.go @@ -19,6 +19,8 @@ package netpol import ( "context" "fmt" + "net" + "strconv" "strings" "time" @@ -109,14 +111,15 @@ func (k *kubeManager) getPod(ns string, name string) (*v1.Pod, error) { // probeConnectivity execs into a pod and checks its connectivity to another pod.. func (k *kubeManager) probeConnectivity(nsFrom string, podFrom string, containerFrom string, addrTo string, protocol v1.Protocol, toPort int) (bool, string, error) { + port := strconv.Itoa(toPort) var cmd []string switch protocol { case v1.ProtocolSCTP: - cmd = []string{"/agnhost", "connect", fmt.Sprintf("%s:%d", addrTo, toPort), "--timeout=1s", "--protocol=sctp"} + cmd = []string{"/agnhost", "connect", net.JoinHostPort(addrTo, port), "--timeout=1s", "--protocol=sctp"} case v1.ProtocolTCP: - cmd = []string{"/agnhost", "connect", fmt.Sprintf("%s:%d", addrTo, toPort), "--timeout=1s", "--protocol=tcp"} + cmd = []string{"/agnhost", "connect", net.JoinHostPort(addrTo, port), "--timeout=1s", "--protocol=tcp"} case v1.ProtocolUDP: - cmd = []string{"/agnhost", "connect", fmt.Sprintf("%s:%d", addrTo, toPort), "--timeout=1s", "--protocol=udp"} + cmd = []string{"/agnhost", "connect", net.JoinHostPort(addrTo, port), "--timeout=1s", "--protocol=udp"} default: framework.Failf("protocol %s not supported", protocol) }