فهرست منبع

Allow unspecified protocol on exposed port in kube backend

Signed-off-by: Michael Irwin <[email protected]>

The Compose spec doesn't provide a default value, but the code
was defaulting to TCP in the service protocol, just not in the
name. If no protocol was specified, it would cause an invalid
service name (eg, "80-")
Michael Irwin 4 سال پیش
والد
کامیت
e62bfc87c2
1فایلهای تغییر یافته به همراه3 افزوده شده و 2 حذف شده
  1. 3 2
      kube/resources/kube.go

+ 3 - 2
kube/resources/kube.go

@@ -92,12 +92,13 @@ func mapToService(project *types.Project, service types.ServiceConfig) *core.Ser
 		if p.Published != 0 {
 			serviceType = core.ServiceTypeLoadBalancer
 		}
+		protocol := toProtocol(p.Protocol)
 		ports = append(ports,
 			core.ServicePort{
-				Name:       fmt.Sprintf("%d-%s", p.Published, strings.ToLower(p.Protocol)),
+				Name:       fmt.Sprintf("%d-%s", p.Published, strings.ToLower(string(protocol))),
 				Port:       int32(p.Published),
 				TargetPort: intstr.FromInt(int(p.Target)),
-				Protocol:   toProtocol(p.Protocol),
+				Protocol:   protocol,
 			})
 	}
 	if len(ports) == 0 { // headless service