From cf7c83b30453ffba1c63d197d98dbde7ea7da0e8 Mon Sep 17 00:00:00 2001 From: Yicheng Qin Date: Wed, 10 Jun 2015 15:06:49 -0700 Subject: [PATCH] etcdmain: fix that advertise-client-urls is required in proxy mode etcd proxy doesn't need to set advertise-client-urls because the flag is not used. --- etcdmain/config.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/etcdmain/config.go b/etcdmain/config.go index c18023f36..e09a140b0 100644 --- a/etcdmain/config.go +++ b/etcdmain/config.go @@ -269,8 +269,12 @@ func (cfg *config) Parse(arguments []string) error { if err != nil { return err } - if flags.IsSet(cfg.FlagSet, "listen-client-urls") && !flags.IsSet(cfg.FlagSet, "advertise-client-urls") { - return errUnsetAdvertiseClientURLsFlag + + // when etcd runs in member mode user needs to set -advertise-client-urls if -listen-client-urls is set. + if cfg.proxy.String() != proxyFlagOn { + if flags.IsSet(cfg.FlagSet, "listen-client-urls") && !flags.IsSet(cfg.FlagSet, "advertise-client-urls") { + return errUnsetAdvertiseClientURLsFlag + } } if 5*cfg.TickMs > cfg.ElectionMs {