Fixup port printing.
This commit is contained in:
parent
3a598eba0e
commit
f0ff1927f1
@ -127,7 +127,7 @@ func printObjectSpecificMessage(obj runtime.Object, out io.Writer) {
|
||||
you will also need to explicitly open a Firewall rule for the service port(s) (%s) to serve traffic.
|
||||
|
||||
See https://github.com/GoogleCloudPlatform/kubernetes/tree/master/docs/services-firewalls.md for more details.
|
||||
`, makePortsString(obj.Spec.Ports))
|
||||
`, makePortsString(obj.Spec.Ports, false))
|
||||
out.Write([]byte(msg))
|
||||
}
|
||||
if obj.Spec.Type == api.ServiceTypeNodePort {
|
||||
@ -137,16 +137,22 @@ func printObjectSpecificMessage(obj runtime.Object, out io.Writer) {
|
||||
firewall rules for the service port(s) (%s) to serve traffic.
|
||||
|
||||
See https://github.com/GoogleCloudPlatform/kubernetes/tree/master/docs/services-firewalls.md for more details.
|
||||
`, makePortsString(obj.Spec.Ports))
|
||||
`, makePortsString(obj.Spec.Ports, true))
|
||||
out.Write([]byte(msg))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func makePortsString(ports []api.ServicePort) string {
|
||||
func makePortsString(ports []api.ServicePort, useNodePort bool) string {
|
||||
pieces := make([]string, len(ports))
|
||||
for ix := range ports {
|
||||
pieces[ix] = fmt.Sprintf("%s:%d", strings.ToLower(string(ports[ix].Protocol)), ports[ix].NodePort)
|
||||
var port int
|
||||
if useNodePort {
|
||||
port = ports[ix].NodePort
|
||||
} else {
|
||||
port = ports[ix].Port
|
||||
}
|
||||
pieces[ix] = fmt.Sprintf("%s:%d", strings.ToLower(string(ports[ix].Protocol)), port)
|
||||
}
|
||||
return strings.Join(pieces, ",")
|
||||
}
|
||||
|
@ -169,6 +169,7 @@ func TestPrintObjectSpecificMessage(t *testing.T) {
|
||||
func TestMakePortsString(t *testing.T) {
|
||||
tests := []struct {
|
||||
ports []api.ServicePort
|
||||
useNodePort bool
|
||||
expectedOutput string
|
||||
}{
|
||||
{ports: nil, expectedOutput: ""},
|
||||
@ -197,9 +198,24 @@ func TestMakePortsString(t *testing.T) {
|
||||
},
|
||||
expectedOutput: "tcp:80,udp:8080,tcp:9000",
|
||||
},
|
||||
{ports: []api.ServicePort{
|
||||
{
|
||||
Port: 80,
|
||||
NodePort: 9090,
|
||||
Protocol: "TCP",
|
||||
},
|
||||
{
|
||||
Port: 8080,
|
||||
NodePort: 80,
|
||||
Protocol: "UDP",
|
||||
},
|
||||
},
|
||||
useNodePort: true,
|
||||
expectedOutput: "tcp:9090,udp:80",
|
||||
},
|
||||
}
|
||||
for _, test := range tests {
|
||||
output := makePortsString(test.ports)
|
||||
output := makePortsString(test.ports, test.useNodePort)
|
||||
if output != test.expectedOutput {
|
||||
t.Errorf("expected: %s, saw: %s.", test.expectedOutput, output)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user