m/test/e2e: test NodePort

This was originally written as a test for validating fixes for
the issue that NodePort was not working if any non-local pods were in
the NodePort service, even for externalTrafficPolicy: cluster services.
As it turns out CL:2795 fixed this, the changes in previous versions of
this CL broke it again. So now it just consists of the test itself,
which passes.

Change-Id: If4cf4ffc46a5456b4defa330776e043593e61b29
Reviewed-on: https://review.monogon.dev/c/monogon/+/1924
Tested-by: Jenkins CI
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
diff --git a/metropolis/test/launch/cluster/cluster.go b/metropolis/test/launch/cluster/cluster.go
index 14a7307..1a1fe3c 100644
--- a/metropolis/test/launch/cluster/cluster.go
+++ b/metropolis/test/launch/cluster/cluster.go
@@ -579,9 +579,9 @@
 	socketDir   string
 	metroctlDir string
 
-	// socksDialer is used by DialNode to establish connections to nodes via the
+	// SOCKSDialer is used by DialNode to establish connections to nodes via the
 	// SOCKS server ran by nanoswitch.
-	socksDialer proxy.Dialer
+	SOCKSDialer proxy.Dialer
 
 	// authClient is a cached authenticated owner connection to a Curator
 	// instance within the cluster.
@@ -881,7 +881,7 @@
 		socketDir:   sd,
 		metroctlDir: md,
 
-		socksDialer: socksDialer,
+		SOCKSDialer: socksDialer,
 
 		ctxT: ctxT,
 		ctxC: ctxC,
@@ -1159,7 +1159,7 @@
 	}
 	// Already an IP address?
 	if net.ParseIP(host) != nil {
-		return c.socksDialer.Dial("tcp", addr)
+		return c.SOCKSDialer.Dial("tcp", addr)
 	}
 
 	// Otherwise, expect a node name.
@@ -1168,7 +1168,7 @@
 		return nil, fmt.Errorf("unknown node %q", host)
 	}
 	addr = net.JoinHostPort(node.ManagementAddress, port)
-	return c.socksDialer.Dial("tcp", addr)
+	return c.SOCKSDialer.Dial("tcp", addr)
 }
 
 // GetKubeClientSet gets a Kubernetes client set accessing the Metropolis