mirror of
https://github.com/coredns/coredns.git
synced 2025-12-07 19:05:19 -05:00
plugin/k8s_external: implement zone transfers (#4977)
Implement transfer for k8s_external. Notifies not supported. Signed-off-by: Chris O'Haver <cohaver@infoblox.com>
This commit is contained in:
@@ -29,9 +29,13 @@ type Externaler interface {
|
||||
External(request.Request) ([]msg.Service, int)
|
||||
// ExternalAddress should return a string slice of addresses for the nameserving endpoint.
|
||||
ExternalAddress(state request.Request) []dns.RR
|
||||
// ExternalServices returns all services in the given zone as a slice of msg.Service.
|
||||
ExternalServices(zone string) []msg.Service
|
||||
// ExternalSerial gets the current serial.
|
||||
ExternalSerial(string) uint32
|
||||
}
|
||||
|
||||
// External resolves Ingress and Loadbalance IPs from kubernetes clusters.
|
||||
// External serves records for External IPs and Loadbalance IPs of Services in Kubernetes clusters.
|
||||
type External struct {
|
||||
Next plugin.Handler
|
||||
Zones []string
|
||||
@@ -42,8 +46,10 @@ type External struct {
|
||||
|
||||
upstream *upstream.Upstream
|
||||
|
||||
externalFunc func(request.Request) ([]msg.Service, int)
|
||||
externalAddrFunc func(request.Request) []dns.RR
|
||||
externalFunc func(request.Request) ([]msg.Service, int)
|
||||
externalAddrFunc func(request.Request) []dns.RR
|
||||
externalSerialFunc func(string) uint32
|
||||
externalServicesFunc func(string) []msg.Service
|
||||
}
|
||||
|
||||
// New returns a new and initialized *External.
|
||||
|
||||
Reference in New Issue
Block a user