diff options
author | 2017-08-03 23:14:11 -0700 | |
---|---|---|
committer | 2017-08-03 23:14:11 -0700 | |
commit | 2c0fc3182caa2d76a2c83a2a3b85ec5c5fa8f915 (patch) | |
tree | 2bfcbe14239c1dbd6f6c7a1161630c3dd05e05d7 /middleware/kubernetes/federation.go | |
parent | 8ad8c75ab41023f894b0d2886bd93c2ba20993ef (diff) | |
download | coredns-2c0fc3182caa2d76a2c83a2a3b85ec5c5fa8f915.tar.gz coredns-2c0fc3182caa2d76a2c83a2a3b85ec5c5fa8f915.tar.zst coredns-2c0fc3182caa2d76a2c83a2a3b85ec5c5fa8f915.zip |
middleware/kubernetes: cleanup (#818)
Drop the interfaceAddr interfaces and just use a function. Cleanup
all fallout from that. Remove the use of global variables and cleanup
the tests a bit.
Diffstat (limited to 'middleware/kubernetes/federation.go')
-rw-r--r-- | middleware/kubernetes/federation.go | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/middleware/kubernetes/federation.go b/middleware/kubernetes/federation.go index 4c058b839..6f7e5f122 100644 --- a/middleware/kubernetes/federation.go +++ b/middleware/kubernetes/federation.go @@ -13,10 +13,6 @@ type Federation struct { zone string } -var localNodeName string -var federationZone string -var federationRegion string - const ( // TODO: Do not hardcode these labels. Pull them out of the API instead. // @@ -80,21 +76,18 @@ func (k *Kubernetes) federationCNAMERecord(r recordRequest) msg.Service { } func (k *Kubernetes) localNodeName() string { - if localNodeName != "" { - return localNodeName - } - localIP := k.localPodIP() + localIP := k.interfaceAddrsFunc() if localIP == nil { return "" } + // Find endpoint matching localIP endpointsList := k.APIConn.EndpointsList() for _, ep := range endpointsList.Items { for _, eps := range ep.Subsets { for _, addr := range eps.Addresses { if localIP.Equal(net.ParseIP(addr.IP)) { - localNodeName = *addr.NodeName - return localNodeName + return *addr.NodeName } } } |