good morning!!!!

Skip to content
Snippets Groups Projects
config.go 894 B
Newer Older
Garet Halliday's avatar
Garet Halliday committed
package zalando_operator_discovery
	"gfx.cafe/util/go/gun"
	"k8s.io/client-go/rest"
)

type Config struct {
	Namespace                   string `env:"PGGAT_NAMESPACE" default:"default"`
	ConfigMapName               string `env:"CONFIG_MAP_NAME"`
	OperatorConfigurationObject string `env:"POSTGRES_OPERATOR_CONFIGURATION_OBJECT"`
	TLSCrtFile                  string `env:"PGGAT_TLS_CRT_FILE" default:"/etc/ssl/certs/pgbouncer.crt"`
	TLSKeyFile                  string `env:"PGGAT_TLS_KEY_FILE" default:"/etc/ssl/certs/pgbouncer.key"`
Garet Halliday's avatar
a  
Garet Halliday committed

	Rest *rest.Config
}

func Load() (*Config, error) {
	var config Config
	gun.Load(&config)
	var err error
	config.Rest, err = rest.InClusterConfig()
	if err != nil {
		return nil, err
	}
	return &config, nil
}

func (T *Config) ListenAndServe() error {
	server, err := NewServer(T)
	if err != nil {
		return err
	}
	return server.ListenAndServe()
}