move controller config to the spec package

This commit is contained in:
Murat Kabilov
2017-08-15 11:41:46 +02:00
parent 606d000022
commit 58572bb43f
4 changed files with 21 additions and 18 deletions
+6 -16
View File
@@ -17,20 +17,9 @@ import (
"github.com/zalando-incubator/postgres-operator/pkg/util/k8sutil"
)
// Config describes configuration of the controller
type Config struct {
RestConfig *rest.Config
InfrastructureRoles map[string]spec.PgUser
NoDatabaseAccess bool
NoTeamsAPI bool
ConfigMapName spec.NamespacedName
Namespace string
}
// Controller represents operator controller
type Controller struct {
config Config
config spec.ControllerConfig
opConfig *config.Config
logger *logrus.Entry
@@ -45,22 +34,23 @@ type Controller struct {
podInformer cache.SharedIndexInformer
podCh chan spec.PodEvent
clusterEventQueues []*cache.FIFO
clusterEventQueues []*cache.FIFO // [workerID]Queue
lastClusterSyncTime int64
}
// NewController creates a new controller
func NewController(controllerConfig *Config) *Controller {
func NewController(controllerConfig *spec.ControllerConfig) *Controller {
logger := logrus.New()
return &Controller{
c := &Controller{
config: *controllerConfig,
opConfig: &config.Config{},
logger: logger.WithField("pkg", "controller"),
clusters: make(map[spec.NamespacedName]*cluster.Cluster),
stopChs: make(map[spec.NamespacedName]chan struct{}),
podCh: make(chan spec.PodEvent),
}
return c
}
func (c *Controller) initClients() {