|
|
|
|
@@ -53,14 +53,19 @@ type config struct {
|
|
|
|
|
type chainConfig struct {
|
|
|
|
|
Name string `yaml:"name"`
|
|
|
|
|
RPCURLEnv string `yaml:"rpc_url_env"`
|
|
|
|
|
GRPCURLEnv string `yaml:"grpc_url_env"` // Native TRON gRPC endpoint
|
|
|
|
|
GRPCTokenEnv string `yaml:"grpc_token_env"`
|
|
|
|
|
GRPC chainGRPCConfig `yaml:"grpc"`
|
|
|
|
|
ChainID uint64 `yaml:"chain_id"`
|
|
|
|
|
NativeToken string `yaml:"native_token"`
|
|
|
|
|
Tokens []tokenConfig `yaml:"tokens"`
|
|
|
|
|
GasTopUpPolicy *gasTopUpPolicyConfig `yaml:"gas_topup_policy"`
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type chainGRPCConfig struct {
|
|
|
|
|
URLEnv string `yaml:"url_env"` // Native TRON gRPC endpoint env var
|
|
|
|
|
TokenEnv string `yaml:"token_env"` // Optional auth token env var for x-token header
|
|
|
|
|
ForceIPv4 bool `yaml:"force_ipv4"` // Force IPv4 sockets when dialing TRON gRPC.
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type serviceWalletConfig struct {
|
|
|
|
|
Chain string `yaml:"chain"`
|
|
|
|
|
Address string `yaml:"address"`
|
|
|
|
|
@@ -282,14 +287,14 @@ func resolveNetworkConfigs(logger mlogger.Logger, chains []chainConfig) ([]gatew
|
|
|
|
|
|
|
|
|
|
// Resolve optional TRON gRPC URL
|
|
|
|
|
grpcURL := ""
|
|
|
|
|
if grpcEnv := strings.TrimSpace(chain.GRPCURLEnv); grpcEnv != "" {
|
|
|
|
|
if grpcEnv := strings.TrimSpace(chain.GRPC.URLEnv); grpcEnv != "" {
|
|
|
|
|
grpcURL = strings.TrimSpace(os.Getenv(grpcEnv))
|
|
|
|
|
if grpcURL != "" {
|
|
|
|
|
logger.Info("TRON gRPC URL configured", zap.String("chain", network.String()), zap.String("env", grpcEnv))
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
grpcToken := ""
|
|
|
|
|
if grpcTokenEnv := strings.TrimSpace(chain.GRPCTokenEnv); grpcTokenEnv != "" {
|
|
|
|
|
if grpcTokenEnv := strings.TrimSpace(chain.GRPC.TokenEnv); grpcTokenEnv != "" {
|
|
|
|
|
grpcToken = strings.TrimSpace(os.Getenv(grpcTokenEnv))
|
|
|
|
|
if grpcToken != "" {
|
|
|
|
|
logger.Info("TRON gRPC token configured", zap.String("chain", network.String()), zap.String("env", grpcTokenEnv))
|
|
|
|
|
@@ -301,6 +306,7 @@ func resolveNetworkConfigs(logger mlogger.Logger, chains []chainConfig) ([]gatew
|
|
|
|
|
RPCURL: rpcURL,
|
|
|
|
|
GRPCUrl: grpcURL,
|
|
|
|
|
GRPCToken: grpcToken,
|
|
|
|
|
GRPCForceIPv4: chain.GRPC.ForceIPv4,
|
|
|
|
|
ChainID: chain.ChainID,
|
|
|
|
|
NativeToken: chain.NativeToken,
|
|
|
|
|
TokenConfigs: contracts,
|
|
|
|
|
|