diff options
author | 2018-09-22 15:12:02 +0100 | |
---|---|---|
committer | 2018-09-22 15:12:02 +0100 | |
commit | 9546b606cb58a372361b39604c1ccf54ed91c7b9 (patch) | |
tree | dd218e883da9d27e34a76dc75407bccb3b32c938 /plugin/kubernetes/kubernetes.go | |
parent | b3d69f1c7f226805e7f70cfd0e88b488dc2eab1b (diff) | |
download | coredns-9546b606cb58a372361b39604c1ccf54ed91c7b9.tar.gz coredns-9546b606cb58a372361b39604c1ccf54ed91c7b9.tar.zst coredns-9546b606cb58a372361b39604c1ccf54ed91c7b9.zip |
K8s remove string ops (#2119)
* plugin/kubernetes: remove bunch a string ops
This removes a bunch of appends to where not needed, makes dnsutil.Join
take variadic args which removes the need to wrap in a new string slice.
Signed-off-by: Miek Gieben <miek@miek.nl>
* Fix calls to dnsutil.Join
Signed-off-by: Miek Gieben <miek@miek.nl>
* Revert these
Signed-off-by: Miek Gieben <miek@miek.nl>
Diffstat (limited to 'plugin/kubernetes/kubernetes.go')
-rw-r--r-- | plugin/kubernetes/kubernetes.go | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/plugin/kubernetes/kubernetes.go b/plugin/kubernetes/kubernetes.go index 4bdcd4877..9eac7d467 100644 --- a/plugin/kubernetes/kubernetes.go +++ b/plugin/kubernetes/kubernetes.go @@ -296,14 +296,18 @@ func (k *Kubernetes) Records(state request.Request, exact bool) ([]msg.Service, // serviceFQDN returns the k8s cluster dns spec service FQDN for the service (or endpoint) object. func serviceFQDN(obj meta.Object, zone string) string { - return dnsutil.Join(append([]string{}, obj.GetName(), obj.GetNamespace(), Svc, zone)) + return dnsutil.Join(obj.GetName(), obj.GetNamespace(), Svc, zone) } // podFQDN returns the k8s cluster dns spec FQDN for the pod. func podFQDN(p *api.Pod, zone string) string { - name := strings.Replace(p.Status.PodIP, ".", "-", -1) - name = strings.Replace(name, ":", "-", -1) - return dnsutil.Join(append([]string{}, name, p.GetNamespace(), Pod, zone)) + if strings.Contains(p.Status.PodIP, ".") { + name := strings.Replace(p.Status.PodIP, ".", "-", -1) + return dnsutil.Join(name, p.GetNamespace(), Pod, zone) + } + + name := strings.Replace(p.Status.PodIP, ":", "-", -1) + return dnsutil.Join(name, p.GetNamespace(), Pod, zone) } // endpointFQDN returns a list of k8s cluster dns spec service FQDNs for each subset in the endpoint. @@ -311,7 +315,7 @@ func endpointFQDN(ep *api.Endpoints, zone string, endpointNameMode bool) []strin var names []string for _, ss := range ep.Subsets { for _, addr := range ss.Addresses { - names = append(names, dnsutil.Join(append([]string{}, endpointHostname(addr, endpointNameMode), serviceFQDN(ep, zone)))) + names = append(names, dnsutil.Join(endpointHostname(addr, endpointNameMode), serviceFQDN(ep, zone))) } } return names @@ -319,7 +323,7 @@ func endpointFQDN(ep *api.Endpoints, zone string, endpointNameMode bool) []strin func endpointHostname(addr api.EndpointAddress, endpointNameMode bool) string { if addr.Hostname != "" { - return strings.ToLower(addr.Hostname) + return addr.Hostname } if endpointNameMode && addr.TargetRef != nil && addr.TargetRef.Name != "" { return addr.TargetRef.Name @@ -328,7 +332,7 @@ func endpointHostname(addr api.EndpointAddress, endpointNameMode bool) string { return strings.Replace(addr.IP, ".", "-", -1) } if strings.Contains(addr.IP, ":") { - return strings.ToLower(strings.Replace(addr.IP, ":", "-", -1)) + return strings.Replace(addr.IP, ":", "-", -1) } return "" } |