Back to / discovery

Package discovery

Latest Go to latest

The latest major version is .

Published: Jul 14, 2017 | License: Apache-2.0 | Module:


Package discovery provides an implementation of the cluster discovery that is used by etcd.



var (
	ErrInvalidURL           = errors.New("discovery: invalid URL")
	ErrBadSizeKey           = errors.New("discovery: size key is bad")
	ErrSizeNotFound         = errors.New("discovery: size key not found")
	ErrTokenNotFound        = errors.New("discovery: token not found")
	ErrDuplicateID          = errors.New("discovery: found duplicate id")
	ErrDuplicateName        = errors.New("discovery: found duplicate name")
	ErrFullCluster          = errors.New("discovery: cluster is full")
	ErrTooManyRetries       = errors.New("discovery: too many retries")
	ErrBadDiscoveryEndpoint = errors.New("discovery: bad discovery endpoint")

func GetCluster

func GetCluster(durl, dproxyurl string) (string, error)

GetCluster will connect to the discovery service at the given url and retrieve a string describing the cluster

func JoinCluster

func JoinCluster(durl, dproxyurl string, id types.ID, config string) (string, error)

JoinCluster will connect to the discovery service at the given url, and register the server represented by the given id and config to the cluster

func SRVGetCluster

func SRVGetCluster(name, dns string, defaultToken string, apurls types.URLs) (string, string, error)

SRVGetCluster gets the cluster information via DNS discovery. TODO(barakmich): Currently ignores priority and weight (as they don't make as much sense for a bootstrap) Also doesn't do any lookups for the token (though it could) Also sees each entry as a separate instance.

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier