Move clientconfig into clientv3 so that it can be reused by both etcdctl and v3 discovery

This commit is contained in:
ahrtr
2022-03-01 00:32:20 +08:00
committed by ahrtr
parent 5ed7f00166
commit 3dcbbf62d9
10 changed files with 141 additions and 148 deletions

View File

@@ -31,6 +31,7 @@ import (
"go.etcd.io/etcd/client/pkg/v3/tlsutil"
"go.etcd.io/etcd/client/pkg/v3/transport"
"go.etcd.io/etcd/client/pkg/v3/types"
"go.etcd.io/etcd/client/v3"
"go.etcd.io/etcd/pkg/v3/flags"
"go.etcd.io/etcd/pkg/v3/netutil"
"go.etcd.io/etcd/server/v3/config"
@@ -516,10 +517,15 @@ func NewConfig() *Config {
V2Deprecation: config.V2_DEPR_DEFAULT,
DiscoveryCfg: v3discovery.DiscoveryConfig{
DialTimeout: DefaultDiscoveryDialTimeout,
RequestTimeOut: DefaultDiscoveryRequestTimeOut,
KeepAliveTime: DefaultDiscoveryKeepAliveTime,
KeepAliveTimeout: DefaultDiscoveryKeepAliveTimeOut,
ClientConfig: clientv3.ClientConfig{
DialTimeout: DefaultDiscoveryDialTimeout,
RequestTimeout: DefaultDiscoveryRequestTimeOut,
KeepAliveTime: DefaultDiscoveryKeepAliveTime,
KeepAliveTimeout: DefaultDiscoveryKeepAliveTimeOut,
Secure: &clientv3.SecureConfig{},
Auth: &clientv3.AuthConfig{},
},
},
}
cfg.InitialCluster = cfg.InitialClusterFromName(cfg.Name)
@@ -688,11 +694,11 @@ func (cfg *Config) Validate() error {
v2discoveryFlagsExist := cfg.Dproxy != ""
v3discoveryFlagsExist := len(cfg.DiscoveryCfg.Endpoints) > 0 ||
cfg.DiscoveryCfg.Token != "" ||
cfg.DiscoveryCfg.CertFile != "" ||
cfg.DiscoveryCfg.KeyFile != "" ||
cfg.DiscoveryCfg.TrustedCAFile != "" ||
cfg.DiscoveryCfg.User != "" ||
cfg.DiscoveryCfg.Password != ""
cfg.DiscoveryCfg.Secure.Cert != "" ||
cfg.DiscoveryCfg.Secure.Key != "" ||
cfg.DiscoveryCfg.Secure.Cacert != "" ||
cfg.DiscoveryCfg.Auth.Username != "" ||
cfg.DiscoveryCfg.Auth.Password != ""
if v2discoveryFlagsExist && v3discoveryFlagsExist {
return errors.New("both v2 discovery settings (discovery, discovery-proxy) " +

View File

@@ -349,15 +349,15 @@ func print(lg *zap.Logger, ec Config, sc config.ServerConfig, memberInitialized
zap.String("discovery-token", sc.DiscoveryCfg.Token),
zap.String("discovery-endpoints", strings.Join(sc.DiscoveryCfg.Endpoints, ",")),
zap.String("discovery-dial-timeout", sc.DiscoveryCfg.DialTimeout.String()),
zap.String("discovery-request-timeout", sc.DiscoveryCfg.RequestTimeOut.String()),
zap.String("discovery-request-timeout", sc.DiscoveryCfg.RequestTimeout.String()),
zap.String("discovery-keepalive-time", sc.DiscoveryCfg.KeepAliveTime.String()),
zap.String("discovery-keepalive-timeout", sc.DiscoveryCfg.KeepAliveTimeout.String()),
zap.Bool("discovery-insecure-transport", sc.DiscoveryCfg.InsecureTransport),
zap.Bool("discovery-insecure-skip-tls-verify", sc.DiscoveryCfg.InsecureSkipVerify),
zap.String("discovery-cert", sc.DiscoveryCfg.CertFile),
zap.String("discovery-key", sc.DiscoveryCfg.KeyFile),
zap.String("discovery-cacert", sc.DiscoveryCfg.TrustedCAFile),
zap.String("discovery-user", sc.DiscoveryCfg.User),
zap.Bool("discovery-insecure-transport", sc.DiscoveryCfg.Secure.InsecureTransport),
zap.Bool("discovery-insecure-skip-tls-verify", sc.DiscoveryCfg.Secure.InsecureSkipVerify),
zap.String("discovery-cert", sc.DiscoveryCfg.Secure.Cert),
zap.String("discovery-key", sc.DiscoveryCfg.Secure.Key),
zap.String("discovery-cacert", sc.DiscoveryCfg.Secure.Cacert),
zap.String("discovery-user", sc.DiscoveryCfg.Auth.Username),
zap.String("downgrade-check-interval", sc.DowngradeCheckTime.String()),
zap.Int("max-learners", sc.ExperimentalMaxLearners),