From 0bc3f9d1701b7d071278495cb65bb6fed94f3da7 Mon Sep 17 00:00:00 2001 From: Yavolte Date: Tue, 17 Jun 2025 18:39:40 +0800 Subject: [PATCH] add transport address from env variable --- pkg/errors/error.go | 8 ++++++++ transport/cli/server.go | 4 ++++ transport/grpc/server.go | 6 +++++- transport/http/server.go | 6 +++++- 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/pkg/errors/error.go b/pkg/errors/error.go index 37c5392..791622f 100644 --- a/pkg/errors/error.go +++ b/pkg/errors/error.go @@ -14,6 +14,14 @@ func (e *Error) Error() string { return fmt.Sprintf("code: %d, message: %s", e.Code, e.Message) } +func (e *Error) GetCode() int { + return e.Code +} + +func (e *Error) GetMessage() string { + return e.Message +} + func Warp(code int, err error) error { return &Error{ Code: code, diff --git a/transport/cli/server.go b/transport/cli/server.go index 2a1926d..87f734f 100644 --- a/transport/cli/server.go +++ b/transport/cli/server.go @@ -6,7 +6,9 @@ import ( "math" "net" "net/url" + "os" "runtime" + "strconv" "strings" "sync" "sync/atomic" @@ -243,6 +245,8 @@ func New(cbs ...Option) *Server { uri: &url.URL{Scheme: "cli"}, router: newRouter(""), } + port, _ := strconv.Atoi(os.Getenv("CLI_PORT")) + srv.opts.address = fmt.Sprintf(":%d", port) for _, cb := range cbs { cb(srv.opts) } diff --git a/transport/grpc/server.go b/transport/grpc/server.go index 7610f2a..2468526 100644 --- a/transport/grpc/server.go +++ b/transport/grpc/server.go @@ -2,8 +2,11 @@ package grpc import ( "context" + "fmt" "net" "net/url" + "os" + "strconv" "git.nobla.cn/golang/aeus/metadata" "git.nobla.cn/golang/aeus/middleware" @@ -136,7 +139,6 @@ func New(cbs ...Option) *Server { opts: &options{ network: "tcp", logger: logger.Default(), - address: ":0", grpcOpts: make([]grpc.ServerOption, 0, 10), }, uri: &url.URL{ @@ -144,6 +146,8 @@ func New(cbs ...Option) *Server { }, middlewares: make([]middleware.Middleware, 0, 10), } + port, _ := strconv.Atoi(os.Getenv("GRPC_PORT")) + svr.opts.address = fmt.Sprintf(":%d", port) for _, cb := range cbs { cb(svr.opts) } diff --git a/transport/http/server.go b/transport/http/server.go index 750a07b..d26ac75 100644 --- a/transport/http/server.go +++ b/transport/http/server.go @@ -2,11 +2,14 @@ package http import ( "context" + "fmt" "net" "net/http" "net/http/pprof" "net/url" + "os" "path" + "strconv" "sync" "time" @@ -242,9 +245,10 @@ func New(cbs ...Option) *Server { opts: &options{ network: "tcp", logger: logger.Default(), - address: ":0", }, } + port, _ := strconv.Atoi(os.Getenv("HTTP_PORT")) + svr.opts.address = fmt.Sprintf(":%d", port) for _, cb := range cbs { cb(svr.opts) }