mirror of
				https://github.com/coredns/coredns.git
				synced 2025-10-29 01:04:15 -04:00 
			
		
		
		
	* Implement notifies for transfer plugin (#3972) * Fix notifies in transfer plugin Signed-off-by: Miek Gieben <miek@miek.nl> * Make it compile Signed-off-by: Miek Gieben <miek@miek.nl> * Port more plugins Signed-off-by: Miek Gieben <miek@miek.nl> * golint Signed-off-by: Miek Gieben <miek@miek.nl> * Fix tests Signed-off-by: Miek Gieben <miek@miek.nl> * Fix notifies in transfer plugin Signed-off-by: Miek Gieben <miek@miek.nl> * Make it compile Signed-off-by: Miek Gieben <miek@miek.nl> * Port more plugins Signed-off-by: Miek Gieben <miek@miek.nl> * golint Signed-off-by: Miek Gieben <miek@miek.nl> * Fix tests Signed-off-by: Miek Gieben <miek@miek.nl> * Fix tests Signed-off-by: Miek Gieben <miek@miek.nl> * really fix test Signed-off-by: Miek Gieben <miek@miek.nl> * Implement ixfr fallback and unify file and auto for transfering Signed-off-by: Miek Gieben <miek@miek.nl> * Add transfer tests copied and modified from #3452 Signed-off-by: Miek Gieben <miek@miek.nl> * Test correct selection of plugin Signed-off-by: Miek Gieben <miek@miek.nl> * add upstream back in Signed-off-by: Miek Gieben <miek@miek.nl> * Implement ixfr fallback and unify file and auto for transfering Signed-off-by: Miek Gieben <miek@miek.nl> * fix test Signed-off-by: Miek Gieben <miek@miek.nl> * properly merge Signed-off-by: Miek Gieben <miek@miek.nl> * Remove plugin/kubernetes/setup_transfer_test.go Signed-off-by: Yong Tang <yong.tang.github@outlook.com> Co-authored-by: Miek Gieben <miek@miek.nl>
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| package plugin
 | |
| 
 | |
| import (
 | |
| 	"context"
 | |
| 
 | |
| 	"github.com/coredns/coredns/plugin/etcd/msg"
 | |
| 	"github.com/coredns/coredns/request"
 | |
| 
 | |
| 	"github.com/miekg/dns"
 | |
| )
 | |
| 
 | |
| // ServiceBackend defines a (dynamic) backend that returns a slice of service definitions.
 | |
| type ServiceBackend interface {
 | |
| 	// Services communicates with the backend to retrieve the service definitions. Exact indicates
 | |
| 	// on exact match should be returned.
 | |
| 	Services(ctx context.Context, state request.Request, exact bool, opt Options) ([]msg.Service, error)
 | |
| 
 | |
| 	// Reverse communicates with the backend to retrieve service definition based on a IP address
 | |
| 	// instead of a name. I.e. a reverse DNS lookup.
 | |
| 	Reverse(ctx context.Context, state request.Request, exact bool, opt Options) ([]msg.Service, error)
 | |
| 
 | |
| 	// Lookup is used to find records else where.
 | |
| 	Lookup(ctx context.Context, state request.Request, name string, typ uint16) (*dns.Msg, error)
 | |
| 
 | |
| 	// Returns _all_ services that matches a certain name.
 | |
| 	// Note: it does not implement a specific service.
 | |
| 	Records(ctx context.Context, state request.Request, exact bool) ([]msg.Service, error)
 | |
| 
 | |
| 	// IsNameError returns true if err indicated a record not found condition
 | |
| 	IsNameError(err error) bool
 | |
| 
 | |
| 	// Serial returns a SOA serial number to construct a SOA record.
 | |
| 	Serial(state request.Request) uint32
 | |
| 
 | |
| 	// MinTTL returns the minimum TTL to be used in the SOA record.
 | |
| 	MinTTL(state request.Request) uint32
 | |
| }
 | |
| 
 | |
| // Options are extra options that can be specified for a lookup.
 | |
| type Options struct{}
 |