implement k8s service discovery (#988)
* implement k8s service discovery * simplify code * use default namespace if not provided * disable codecov bot comment * ignore adhoc dir * simplify building target in NewClient * reformat code * Fix filepath (#990) * format code, and reorg imports (#991) * add more unit test Co-authored-by: anqiansong <anqiansong@gmail.com>
This commit is contained in:
@@ -55,13 +55,21 @@ func NewClient(c RpcClientConf, options ...ClientOption) (Client, error) {
|
||||
}
|
||||
opts = append(opts, options...)
|
||||
|
||||
var client Client
|
||||
var target string
|
||||
var err error
|
||||
if len(c.Endpoints) > 0 {
|
||||
client, err = internal.NewClient(internal.BuildDirectTarget(c.Endpoints), opts...)
|
||||
} else if err = c.Etcd.Validate(); err == nil {
|
||||
client, err = internal.NewClient(internal.BuildDiscovTarget(c.Etcd.Hosts, c.Etcd.Key), opts...)
|
||||
target = internal.BuildDirectTarget(c.Endpoints)
|
||||
} else if len(c.Target) > 0 {
|
||||
target = c.Target
|
||||
} else {
|
||||
if err = c.Etcd.Validate(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
target = internal.BuildDiscovTarget(c.Etcd.Hosts, c.Etcd.Key)
|
||||
}
|
||||
|
||||
client, err := internal.NewClient(target, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user