Files
kratos-bootstrap/registry/etcd/client.go
2024-11-14 15:25:58 +08:00

32 lines
615 B
Go

package etcd
import (
etcdKratos "github.com/go-kratos/kratos/contrib/registry/etcd/v2"
"github.com/go-kratos/kratos/v2/log"
etcdClient "go.etcd.io/etcd/client/v3"
conf "github.com/tx7do/kratos-bootstrap/api/gen/go/conf/v1"
)
// NewRegistry 创建一个注册发现客户端 - Etcd
func NewRegistry(c *conf.Registry) *etcdKratos.Registry {
if c == nil || c.Etcd == nil {
return nil
}
cfg := etcdClient.Config{
Endpoints: c.Etcd.Endpoints,
}
var err error
var cli *etcdClient.Client
if cli, err = etcdClient.New(cfg); err != nil {
log.Fatal(err)
}
reg := etcdKratos.New(cli)
return reg
}