func makeTestEndpointsDiscovery() (*Endpoints, *fakeInformer, *fakeInformer, *fakeInformer) { svc := newFakeServiceInformer() eps := newFakeEndpointsInformer() pod := newFakePodInformer() return NewEndpoints(log.Base(), svc, eps, pod), svc, eps, pod }
// ProvidersFromConfig returns all TargetProviders configured in cfg. func ProvidersFromConfig(cfg config.ServiceDiscoveryConfig) map[string]TargetProvider { providers := map[string]TargetProvider{} app := func(mech string, i int, tp TargetProvider) { providers[fmt.Sprintf("%s/%d", mech, i)] = tp } for i, c := range cfg.DNSSDConfigs { app("dns", i, dns.NewDiscovery(c)) } for i, c := range cfg.FileSDConfigs { app("file", i, file.NewDiscovery(c)) } for i, c := range cfg.ConsulSDConfigs { k, err := consul.NewDiscovery(c) if err != nil { log.Errorf("Cannot create Consul discovery: %s", err) continue } app("consul", i, k) } for i, c := range cfg.MarathonSDConfigs { m, err := marathon.NewDiscovery(c) if err != nil { log.Errorf("Cannot create Marathon discovery: %s", err) continue } app("marathon", i, m) } for i, c := range cfg.KubernetesSDConfigs { k, err := kubernetes.New(log.Base(), c) if err != nil { log.Errorf("Cannot create Kubernetes discovery: %s", err) continue } app("kubernetes", i, k) } for i, c := range cfg.ServersetSDConfigs { app("serverset", i, zookeeper.NewServersetDiscovery(c)) } for i, c := range cfg.NerveSDConfigs { app("nerve", i, zookeeper.NewNerveDiscovery(c)) } for i, c := range cfg.EC2SDConfigs { app("ec2", i, ec2.NewDiscovery(c)) } for i, c := range cfg.GCESDConfigs { gced, err := gce.NewDiscovery(c) if err != nil { log.Errorf("Cannot initialize GCE discovery: %s", err) continue } app("gce", i, gced) } for i, c := range cfg.AzureSDConfigs { app("azure", i, azure.NewDiscovery(c)) } if len(cfg.StaticConfigs) > 0 { app("static", 0, NewStaticProvider(cfg.StaticConfigs)) } return providers }
func makeTestPodDiscovery() (*Pod, *fakeInformer) { i := newFakePodInformer() return NewPod(log.Base(), i), i }
func makeTestServiceDiscovery() (*Service, *fakeInformer) { i := newFakeServiceInformer() return NewService(log.Base(), i), i }
// NewKubernetesDiscovery creates a Kubernetes service discovery based on the passed-in configuration. func NewKubernetesDiscovery(conf *config.KubernetesSDConfig) (*kubernetes.Kubernetes, error) { return kubernetes.New(log.Base(), conf) }
func makeTestNodeDiscovery() (*Node, *fakeInformer) { i := newFakeNodeInformer() return NewNode(log.Base(), i), i }