source

package
v0.5.0-alpha.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2018 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrSourceNotFound = errors.New("source not found")

ErrSourceNotFound is returned when a requested source doesn't exist.

Functions

func NewKubeClient added in v0.4.0

func NewKubeClient(kubeConfig, kubeMaster string) (*kubernetes.Clientset, error)

NewKubeClient returns a new Kubernetes client object. It takes a Config and uses KubeMaster and KubeConfig attributes to connect to the cluster. If KubeConfig isn't provided it defaults to using the recommended default.

Types

type ClientGenerator added in v0.4.0

type ClientGenerator interface {
	KubeClient() (kubernetes.Interface, error)
}

ClientGenerator provides clients

type Config added in v0.4.0

type Config struct {
	Namespace                string
	AnnotationFilter         string
	FQDNTemplate             string
	CombineFQDNAndAnnotation bool
	Compatibility            string
	PublishInternal          bool
}

Config holds shared configuration options for all Sources.

type SingletonClientGenerator added in v0.4.0

type SingletonClientGenerator struct {
	KubeConfig string
	KubeMaster string

	sync.Once
	// contains filtered or unexported fields
}

SingletonClientGenerator stores provider clients and guarantees that only one instance of client will be generated

func (*SingletonClientGenerator) KubeClient added in v0.4.0

KubeClient generates a kube client if it was not created before

type Source

type Source interface {
	Endpoints() ([]*endpoint.Endpoint, error)
}

Source defines the interface Endpoint sources should implement.

func BuildWithConfig added in v0.4.0

func BuildWithConfig(source string, p ClientGenerator, cfg *Config) (Source, error)

BuildWithConfig allows to generate a Source implementation from the shared config

func ByNames added in v0.4.0

func ByNames(p ClientGenerator, names []string, cfg *Config) ([]Source, error)

ByNames returns multiple Sources given multiple names.

func NewDedupSource added in v0.3.0

func NewDedupSource(source Source) Source

NewDedupSource creates a new dedupSource wrapping the provided Source.

func NewFakeSource added in v0.4.0

func NewFakeSource(fqdnTemplate string) (Source, error)

NewFakeSource creates a new fakeSource with the given config.

func NewIngressSource

func NewIngressSource(kubeClient kubernetes.Interface, namespace, annotationFilter string, fqdnTemplate string, combineFqdnAnnotation bool) (Source, error)

NewIngressSource creates a new ingressSource with the given config.

func NewMultiSource

func NewMultiSource(children []Source) Source

NewMultiSource creates a new multiSource.

func NewServiceSource

func NewServiceSource(kubeClient kubernetes.Interface, namespace, annotationFilter string, fqdnTemplate string, combineFqdnAnnotation bool, compatibility string, publishInternal bool) (Source, error)

NewServiceSource creates a new serviceSource with the given config.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL