aboutsummaryrefslogtreecommitdiff
path: root/plugin/kubernetes/handler_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/kubernetes/handler_test.go')
-rw-r--r--plugin/kubernetes/handler_test.go24
1 files changed, 24 insertions, 0 deletions
diff --git a/plugin/kubernetes/handler_test.go b/plugin/kubernetes/handler_test.go
index 2edeb8e8e..435dcb1b6 100644
--- a/plugin/kubernetes/handler_test.go
+++ b/plugin/kubernetes/handler_test.go
@@ -183,6 +183,15 @@ var dnsTestCases = []test.Case{
test.CNAME("external.testns.svc.cluster.local. 5 IN CNAME ext.interwebs.test."),
},
},
+ // CNAME External To Internal Service
+ {
+ Qname: "external-to-service.testns.svc.cluster.local", Qtype: dns.TypeA,
+ Rcode: dns.RcodeSuccess,
+ Answer: []dns.RR{
+ test.CNAME("external-to-service.testns.svc.cluster.local. 5 IN CNAME svc1.testns.svc.cluster.local."),
+ test.A("svc1.testns.svc.cluster.local. 5 IN A 10.0.0.1"),
+ },
+ },
// AAAA Service (with an existing A record, but no AAAA record)
{
Qname: "svc1.testns.svc.cluster.local.", Qtype: dns.TypeAAAA,
@@ -420,6 +429,21 @@ var svcIndex = map[string][]*api.Service{
Type: api.ServiceTypeExternalName,
},
}},
+ "external-to-service.testns": {{
+ ObjectMeta: meta.ObjectMeta{
+ Name: "external-to-service",
+ Namespace: "testns",
+ },
+ Spec: api.ServiceSpec{
+ ExternalName: "svc1.testns.svc.cluster.local.",
+ Ports: []api.ServicePort{{
+ Name: "http",
+ Protocol: "tcp",
+ Port: 80,
+ }},
+ Type: api.ServiceTypeExternalName,
+ },
+ }},
}
func (APIConnServeTest) SvcIndex(s string) []*api.Service {