Add friends server gRPC

This commit is contained in:
SuperMarioDaBom 2025-02-21 09:53:12 -08:00
parent ce8e8ad007
commit 694883da50
2 changed files with 45 additions and 4 deletions

View File

@ -1,7 +1,8 @@
package globals
import (
pb "github.com/PretendoNetwork/grpc-go/account"
pb_accounts "github.com/PretendoNetwork/grpc-go/account"
pb_friends "github.com/PretendoNetwork/grpc-go/friends"
"github.com/PretendoNetwork/nex-go/v2"
"github.com/PretendoNetwork/plogger-go"
"google.golang.org/grpc"
@ -15,5 +16,8 @@ var AuthenticationEndpoint *nex.PRUDPEndPoint
var SecureServer *nex.PRUDPServer
var SecureEndpoint *nex.PRUDPEndPoint
var GRPCAccountClientConnection *grpc.ClientConn
var GRPCAccountClient pb.AccountClient
var GRPCAccountClient pb_accounts.AccountClient
var GRPCAccountCommonMetadata metadata.MD
var GRPCFriendsClientConnection *grpc.ClientConn
var GRPCFriendsClient pb_friends.FriendsClient
var GRPCFriendsCommonMetadata metadata.MD

41
init.go
View File

@ -7,7 +7,8 @@ import (
"strconv"
"strings"
pb "github.com/PretendoNetwork/grpc-go/account"
pb_account "github.com/PretendoNetwork/grpc-go/account"
pb_friends "github.com/PretendoNetwork/grpc-go/friends"
"github.com/PretendoNetwork/nex-go/v2"
"github.com/PretendoNetwork/nex-go/v2/types"
"github.com/PretendoNetwork/plogger-go"
@ -36,6 +37,9 @@ func init() {
accountGRPCHost := os.Getenv("PN_WUC_ACCOUNT_GRPC_HOST")
accountGRPCPort := os.Getenv("PN_WUC_ACCOUNT_GRPC_PORT")
accountGRPCAPIKey := os.Getenv("PN_WUC_ACCOUNT_GRPC_API_KEY")
friendsGRPCHost := os.Getenv("PN_WUC_FRIENDS_GRPC_HOST")
friendsGRPCPort := os.Getenv("PN_WUC_FRIENDS_GRPC_PORT")
friendsGRPCAPIKey := os.Getenv("PN_WUC_FRIENDS_GRPC_API_KEY")
postgresURI := os.Getenv("PN_WUC_POSTGRES_URI")
if strings.TrimSpace(postgresURI) == "" {
@ -108,16 +112,49 @@ func init() {
globals.Logger.Warning("Insecure gRPC server detected. PN_WUC_ACCOUNT_GRPC_API_KEY environment variable not set")
}
if strings.TrimSpace(friendsGRPCHost) == "" {
globals.Logger.Error("PN_WUC_FRIENDS_GRPC_HOST environment variable not set")
os.Exit(0)
}
if strings.TrimSpace(friendsGRPCPort) == "" {
globals.Logger.Error("PN_WUC_FRIENDS_GRPC_PORT environment variable not set")
os.Exit(0)
}
if port, err := strconv.Atoi(friendsGRPCPort); err != nil {
globals.Logger.Errorf("PN_WUC_FRIENDS_GRPC_PORT is not a valid port. Expected 0-65535, got %s", friendsGRPCPort)
os.Exit(0)
} else if port < 0 || port > 65535 {
globals.Logger.Errorf("PN_WUC_FRIENDS_GRPC_PORT is not a valid port. Expected 0-65535, got %s", friendsGRPCPort)
os.Exit(0)
}
if strings.TrimSpace(friendsGRPCAPIKey) == "" {
globals.Logger.Warning("Insecure gRPC server detected. PN_WUC_FRIENDS_GRPC_API_KEY environment variable not set")
}
globals.GRPCAccountClientConnection, err = grpc.Dial(fmt.Sprintf("%s:%s", accountGRPCHost, accountGRPCPort), grpc.WithTransportCredentials(insecure.NewCredentials()))
if err != nil {
globals.Logger.Criticalf("Failed to connect to account gRPC server: %v", err)
os.Exit(0)
}
globals.GRPCAccountClient = pb.NewAccountClient(globals.GRPCAccountClientConnection)
globals.GRPCAccountClient = pb_account.NewAccountClient(globals.GRPCAccountClientConnection)
globals.GRPCAccountCommonMetadata = metadata.Pairs(
"X-API-Key", accountGRPCAPIKey,
)
globals.GRPCFriendsClientConnection, err = grpc.Dial(fmt.Sprintf("%s:%s", friendsGRPCHost, friendsGRPCPort), grpc.WithTransportCredentials(insecure.NewCredentials()))
if err != nil {
globals.Logger.Criticalf("Failed to connect to account gRPC server: %v", err)
os.Exit(0)
}
globals.GRPCFriendsClient = pb_friends.NewFriendsClient(globals.GRPCFriendsClientConnection)
globals.GRPCFriendsCommonMetadata = metadata.Pairs(
"X-API-Key", friendsGRPCAPIKey,
)
database.ConnectPostgres()
}