|
|
@@ -52,6 +52,20 @@ var (
|
|
|
|
|
|
clientTLSInfo = transport.TLSInfo{}
|
|
|
peerTLSInfo = transport.TLSInfo{}
|
|
|
+
|
|
|
+ deprecated = []string{
|
|
|
+ "config",
|
|
|
+ "peers-file",
|
|
|
+ "peer-heartbeat-interval",
|
|
|
+ "peer-election-timeout",
|
|
|
+ "max-result-buffer",
|
|
|
+ "max-retry-attempts",
|
|
|
+ "retry-interval",
|
|
|
+ "snapshot",
|
|
|
+ "cluster-active-size",
|
|
|
+ "cluster-remove-delay",
|
|
|
+ "cluster-sync-interval",
|
|
|
+ }
|
|
|
)
|
|
|
|
|
|
func init() {
|
|
|
@@ -70,9 +84,14 @@ func init() {
|
|
|
flag.StringVar(&peerTLSInfo.CAFile, "peer-ca-file", "", "Path to the peer server TLS CA file.")
|
|
|
flag.StringVar(&peerTLSInfo.CertFile, "peer-cert-file", "", "Path to the peer server TLS cert file.")
|
|
|
flag.StringVar(&peerTLSInfo.KeyFile, "peer-key-file", "", "Path to the peer server TLS key file.")
|
|
|
+
|
|
|
+ for _, f := range deprecated {
|
|
|
+ flag.Var(&deprecatedFlag{f}, f, "No longer supported.")
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
func main() {
|
|
|
+ flag.CommandLine.Usage = usageWithIgnoredFlagsFunc(flag.CommandLine, deprecated)
|
|
|
flag.Parse()
|
|
|
|
|
|
setFlagsFromEnv()
|
|
|
@@ -330,3 +349,39 @@ func setFlagsFromEnv() {
|
|
|
|
|
|
})
|
|
|
}
|
|
|
+
|
|
|
+type deprecatedFlag struct {
|
|
|
+ name string
|
|
|
+}
|
|
|
+
|
|
|
+// IsBoolFlag is defined to allow the flag to be defined without an argument
|
|
|
+func (df *deprecatedFlag) IsBoolFlag() bool {
|
|
|
+ return true
|
|
|
+}
|
|
|
+
|
|
|
+func (df *deprecatedFlag) Set(s string) error {
|
|
|
+ log.Printf("WARNING: flag \"-%s\" is no longer supported.", df.name)
|
|
|
+ return nil
|
|
|
+}
|
|
|
+
|
|
|
+func (df *deprecatedFlag) String() string {
|
|
|
+ return ""
|
|
|
+}
|
|
|
+
|
|
|
+func usageWithIgnoredFlagsFunc(fs *flag.FlagSet, ignore []string) func() {
|
|
|
+ iMap := make(map[string]struct{}, len(ignore))
|
|
|
+ for _, name := range ignore {
|
|
|
+ iMap[name] = struct{}{}
|
|
|
+ }
|
|
|
+
|
|
|
+ return func() {
|
|
|
+ fs.VisitAll(func(f *flag.Flag) {
|
|
|
+ if _, ok := iMap[f.Name]; ok {
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ format := " -%s=%s: %s\n"
|
|
|
+ fmt.Fprintf(os.Stderr, format, f.Name, f.DefValue, f.Usage)
|
|
|
+ })
|
|
|
+ }
|
|
|
+}
|