package zalando_operator_discovery import ( "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"` 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() }