You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
1.7 KiB

package server
import (
"github.com/go-kratos/kratos/v2/log"
"bkb-payment/internal/conf"
rn "github.com/go-kratos/kratos/contrib/registry/nacos/v2"
"github.com/go-kratos/kratos/v2/registry"
"github.com/google/wire"
"github.com/nacos-group/nacos-sdk-go/clients"
"github.com/nacos-group/nacos-sdk-go/common/constant"
"github.com/nacos-group/nacos-sdk-go/vo"
)
// ProviderSet is server providers.
var ProviderSet = wire.NewSet(NewGRPCServer, NewHTTPServer, NewDiscovery, NewRegistrar)
func NewNacosClient(env string) vo.NacosClientParam {
type config struct {
addr string
username string
password string
}
var nc config
if env == "prod" || env == "uat" {
nc = config{
// addr: "https://nacos.mangguonews.com",
// username: "nacos_pub",
// password: "88m8JxgK",
addr: "http://1.92.109.79",
}
} else {
nc = config{
// addr: "https://nacos-dev.mangguonews.com",
// username: "nacos",
// password: "nacos",
addr: "http://1.92.109.79",
}
}
sc := []constant.ServerConfig{
*constant.NewServerConfig(nc.addr, 30848),
}
cc := &constant.ClientConfig{
NamespaceId: env, // namespace id
CacheDir: "./log/nacos",
LogDir: "./log/nacos",
}
return vo.NacosClientParam{
ClientConfig: cc,
ServerConfigs: sc,
}
}
func NewRegistrar(app *conf.App) registry.Registrar {
param := NewNacosClient(app.Env)
client, err := clients.NewNamingClient(
param,
)
if err != nil {
log.Fatal(err)
return nil
}
return rn.New(client)
}
func NewDiscovery(env string) registry.Discovery {
param := NewNacosClient(env)
client, err := clients.NewNamingClient(
param,
)
if err != nil {
log.Fatal(err)
}
return rn.New(client)
}