remove etcd requests from the operator
This commit is contained in:
		
							parent
							
								
									d34273543e
								
							
						
					
					
						commit
						56964fd99c
					
				|  | @ -11,8 +11,6 @@ import ( | |||
| 	"sync" | ||||
| 
 | ||||
| 	"github.com/Sirupsen/logrus" | ||||
| 	etcdclient "github.com/coreos/etcd/client" | ||||
| 	"golang.org/x/net/context" | ||||
| 	"k8s.io/client-go/kubernetes" | ||||
| 	"k8s.io/client-go/pkg/api" | ||||
| 	"k8s.io/client-go/pkg/api/v1" | ||||
|  | @ -38,7 +36,6 @@ var ( | |||
| type Config struct { | ||||
| 	KubeClient          *kubernetes.Clientset //TODO: move clients to the better place?
 | ||||
| 	RestClient          *rest.RESTClient | ||||
| 	EtcdClient          etcdclient.KeysAPI | ||||
| 	TeamsAPIClient      *teams.API | ||||
| 	OpConfig            config.Config | ||||
| 	InfrastructureRoles map[string]spec.PgUser // inherited from the controller
 | ||||
|  | @ -146,22 +143,6 @@ func (c *Cluster) initUsers() error { | |||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| func (c *Cluster) etcdKeyExists(keyName string) (bool, error) { | ||||
| 	options := etcdclient.GetOptions{} | ||||
| 	resp, err := c.EtcdClient.Get(context.Background(), keyName, &options) | ||||
| 	if err != nil { | ||||
| 		etcdErr, ok := err.(etcdclient.Error) | ||||
| 		if !ok { | ||||
| 			return false, err | ||||
| 		} | ||||
| 		if etcdErr.Code == etcdclient.ErrorCodeKeyNotFound { | ||||
| 			return false, nil | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	return resp != nil, err | ||||
| } | ||||
| 
 | ||||
| func (c *Cluster) Create(stopCh <-chan struct{}) error { | ||||
| 	c.mu.Lock() | ||||
| 	defer c.mu.Unlock() | ||||
|  | @ -182,13 +163,6 @@ func (c *Cluster) Create(stopCh <-chan struct{}) error { | |||
| 
 | ||||
| 	c.setStatus(spec.ClusterStatusCreating) | ||||
| 
 | ||||
| 	keyExist, err := c.etcdKeyExists(fmt.Sprintf("/%s/%s", c.OpConfig.EtcdScope, c.Metadata.Name)) | ||||
| 	if err != nil { | ||||
| 		c.logger.Warnf("Can't check etcd key: %s", err) | ||||
| 	} | ||||
| 	if keyExist { | ||||
| 		c.logger.Warnf("Etcd key for the cluster already exists") | ||||
| 	} | ||||
| 	//TODO: service will create endpoint implicitly
 | ||||
| 	ep, err := c.createEndpoint() | ||||
| 	if err != nil { | ||||
|  |  | |||
|  | @ -1,11 +1,11 @@ | |||
| package cluster | ||||
| 
 | ||||
| import ( | ||||
| 	"encoding/json" | ||||
| 	"fmt" | ||||
| 	"strings" | ||||
| 	"time" | ||||
| 
 | ||||
| 	"k8s.io/apimachinery/pkg/util/json" | ||||
| 	"k8s.io/client-go/pkg/api/v1" | ||||
| 	"k8s.io/client-go/pkg/apis/apps/v1beta1" | ||||
| 	"k8s.io/client-go/pkg/labels" | ||||
|  |  | |||
|  | @ -5,7 +5,6 @@ import ( | |||
| 	"sync" | ||||
| 
 | ||||
| 	"github.com/Sirupsen/logrus" | ||||
| 	etcdclient "github.com/coreos/etcd/client" | ||||
| 	"k8s.io/client-go/kubernetes" | ||||
| 	"k8s.io/client-go/pkg/api/v1" | ||||
| 	"k8s.io/client-go/rest" | ||||
|  | @ -21,7 +20,6 @@ type Config struct { | |||
| 	RestConfig          *rest.Config | ||||
| 	KubeClient          *kubernetes.Clientset | ||||
| 	RestClient          *rest.RESTClient | ||||
| 	EtcdClient          etcdclient.KeysAPI | ||||
| 	TeamsAPIClient      *teams.API | ||||
| 	InfrastructureRoles map[string]spec.PgUser | ||||
| } | ||||
|  | @ -122,10 +120,6 @@ func (c *Controller) initController() { | |||
| 		DeleteFunc: c.podDelete, | ||||
| 	}) | ||||
| 
 | ||||
| 	if err := c.initEtcdClient(c.opConfig.EtcdHost); err != nil { | ||||
| 		c.logger.Fatalf("Can't get etcd client: %s", err) | ||||
| 	} | ||||
| 
 | ||||
| 	c.clusterEventQueues = make([]*cache.FIFO, c.opConfig.Workers) | ||||
| 	for i := range c.clusterEventQueues { | ||||
| 		c.clusterEventQueues[i] = cache.NewFIFO(func(obj interface{}) (string, error) { | ||||
|  |  | |||
|  | @ -1,25 +0,0 @@ | |||
| package controller | ||||
| 
 | ||||
| import ( | ||||
| 	"fmt" | ||||
| 	"time" | ||||
| 
 | ||||
| 	etcdclient "github.com/coreos/etcd/client" | ||||
| ) | ||||
| 
 | ||||
| func (c *Controller) initEtcdClient(etcdHost string) error { | ||||
| 	etcdURL := fmt.Sprintf("http://%s", etcdHost) | ||||
| 
 | ||||
| 	cfg, err := etcdclient.New(etcdclient.Config{ | ||||
| 		Endpoints:               []string{etcdURL}, | ||||
| 		Transport:               etcdclient.DefaultTransport, | ||||
| 		HeaderTimeoutPerRequest: time.Second, | ||||
| 	}) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 
 | ||||
| 	c.EtcdClient = etcdclient.NewKeysAPI(cfg) | ||||
| 
 | ||||
| 	return nil | ||||
| } | ||||
|  | @ -23,7 +23,6 @@ func (c *Controller) makeClusterConfig() cluster.Config { | |||
| 	return cluster.Config{ | ||||
| 		KubeClient:          c.KubeClient, | ||||
| 		RestClient:          c.RestClient, | ||||
| 		EtcdClient:          c.EtcdClient, | ||||
| 		TeamsAPIClient:      c.TeamsAPIClient, | ||||
| 		OpConfig:            config.Copy(c.opConfig), | ||||
| 		InfrastructureRoles: infrastructureRoles, | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue