aboutsummaryrefslogtreecommitdiff
path: root/plugin/kubernetes/federation.go
diff options
context:
space:
mode:
authorGravatar Yong Tang <yong.tang.github@outlook.com> 2019-08-18 14:41:51 -0700
committerGravatar GitHub <noreply@github.com> 2019-08-18 14:41:51 -0700
commit6402cef3371b6a5716dd032e2484d865cf25338a (patch)
tree3d53847a82db477f9e2e8dea16b0015d5695703e /plugin/kubernetes/federation.go
parentbbf148360b2bd35b9a1e358fdf7984a33b15a8d5 (diff)
downloadcoredns-6402cef3371b6a5716dd032e2484d865cf25338a.tar.gz
coredns-6402cef3371b6a5716dd032e2484d865cf25338a.tar.zst
coredns-6402cef3371b6a5716dd032e2484d865cf25338a.zip
Move federation plugin to github.com/coredns/federation (#3139)
* Remove federation Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Rebuild and point to github.com/coredns/federation Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Export `localNodeName` => `LocalNodeName`, to be used by federation (until deprecation) Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Remove plugin/kubernetes/federation.go (=> kubernetes/federation repo) Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Update github.com/coredns/federation Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * sticker-ci fix Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Diffstat (limited to 'plugin/kubernetes/federation.go')
-rw-r--r--plugin/kubernetes/federation.go51
1 files changed, 0 insertions, 51 deletions
diff --git a/plugin/kubernetes/federation.go b/plugin/kubernetes/federation.go
deleted file mode 100644
index bf169b911..000000000
--- a/plugin/kubernetes/federation.go
+++ /dev/null
@@ -1,51 +0,0 @@
-package kubernetes
-
-import (
- "errors"
-
- "github.com/coredns/coredns/plugin/etcd/msg"
- "github.com/coredns/coredns/plugin/pkg/dnsutil"
- "github.com/coredns/coredns/request"
-)
-
-// The federation node.Labels keys used.
-const (
- // TODO: Do not hardcode these labels. Pull them out of the API instead.
- //
- // We can get them via ....
- // import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
- // metav1.LabelZoneFailureDomain
- // metav1.LabelZoneRegion
- //
- // But importing above breaks coredns with flag collision of 'log_dir'
-
- LabelZone = "failure-domain.beta.kubernetes.io/zone"
- LabelRegion = "failure-domain.beta.kubernetes.io/region"
-)
-
-// Federations is used from the federations plugin to return the service that should be
-// returned as a CNAME for federation(s) to work.
-func (k *Kubernetes) Federations(state request.Request, fname, fzone string) (msg.Service, error) {
- nodeName := k.localNodeName()
- node, err := k.APIConn.GetNodeByName(nodeName)
- if err != nil {
- return msg.Service{}, err
- }
- r, err := parseRequest(state)
- if err != nil {
- return msg.Service{}, err
- }
-
- lz := node.Labels[LabelZone]
- lr := node.Labels[LabelRegion]
-
- if lz == "" || lr == "" {
- return msg.Service{}, errors.New("local node missing zone/region labels")
- }
-
- if r.endpoint == "" {
- return msg.Service{Host: dnsutil.Join(r.service, r.namespace, fname, r.podOrSvc, lz, lr, fzone)}, nil
- }
-
- return msg.Service{Host: dnsutil.Join(r.endpoint, r.service, r.namespace, fname, r.podOrSvc, lz, lr, fzone)}, nil
-}