return error in NewManagerServer func (#335)

Signed-off-by: yxxhero <aiopsclub@163.com>
This commit is contained in:
yxxhero 2021-06-15 01:07:52 -05:00 committed by Gaius
parent 155ee02a54
commit a1fed34ac1
No known key found for this signature in database
GPG Key ID: 8B4E5D1290FA2FFB
3 changed files with 35 additions and 26 deletions

View File

@ -1,9 +1,12 @@
package main package main
import ( import (
"os"
"d7y.io/dragonfly/v2/manager/apis/v2/handler" "d7y.io/dragonfly/v2/manager/apis/v2/handler"
"d7y.io/dragonfly/v2/manager/config" "d7y.io/dragonfly/v2/manager/config"
"d7y.io/dragonfly/v2/manager/server/service" "d7y.io/dragonfly/v2/manager/server/service"
logger "d7y.io/dragonfly/v2/pkg/dflog"
"github.com/gin-gonic/gin" "github.com/gin-gonic/gin"
swaggerFiles "github.com/swaggo/files" swaggerFiles "github.com/swaggo/files"
ginSwagger "github.com/swaggo/gin-swagger" ginSwagger "github.com/swaggo/gin-swagger"
@ -27,7 +30,12 @@ import (
// @host localhost:8080 // @host localhost:8080
// @BasePath /api/v2 // @BasePath /api/v2
func main() { func main() {
server := service.NewManagerServer(config.New()) server, err := service.NewManagerServer(config.New())
if err != nil {
logger.Error(err)
os.Exit(1)
}
router := gin.New() router := gin.New()
handler := handler.NewHandler(server) handler := handler.NewHandler(server)

View File

@ -18,6 +18,7 @@ package server
import ( import (
"context" "context"
"fmt"
"net/http" "net/http"
"os" "os"
"os/signal" "os/signal"
@ -31,7 +32,6 @@ import (
// manager server rpc // manager server rpc
_ "d7y.io/dragonfly/v2/pkg/rpc/manager/server" _ "d7y.io/dragonfly/v2/pkg/rpc/manager/server"
"github.com/pkg/errors"
) )
type Server struct { type Server struct {
@ -42,7 +42,10 @@ type Server struct {
} }
func New(cfg *config.Config) (*Server, error) { func New(cfg *config.Config) (*Server, error) {
if ms := service.NewManagerServer(cfg); ms != nil { ms, err := service.NewManagerServer(cfg)
if err != nil {
return nil, fmt.Errorf("Failed to create manager server: %s", err)
}
router, err := InitRouter(ms) router, err := InitRouter(ms)
if err != nil { if err != nil {
return nil, err return nil, err
@ -57,9 +60,7 @@ func New(cfg *config.Config) (*Server, error) {
}, },
stop: make(chan struct{}), stop: make(chan struct{}),
}, nil }, nil
}
return nil, errors.New("failed to create manager server")
} }
func (s *Server) Serve() error { func (s *Server) Serve() error {

View File

@ -28,7 +28,7 @@ type ManagerServer struct {
redisClient *dc.RedisClient redisClient *dc.RedisClient
} }
func NewManagerServer(cfg *config.Config) *ManagerServer { func NewManagerServer(cfg *config.Config) (*ManagerServer, error) {
var err error var err error
mgr := &ManagerServer{} mgr := &ManagerServer{}
defer func() { defer func() {
@ -38,37 +38,37 @@ func NewManagerServer(cfg *config.Config) *ManagerServer {
}() }()
if err = cfg.Valid(); err != nil { if err = cfg.Valid(); err != nil {
return nil return mgr, err
} }
mgr.identifier = hostidentifier.NewIdentifier() mgr.identifier = hostidentifier.NewIdentifier()
mgr.store, err = client.NewStore(cfg) mgr.store, err = client.NewStore(cfg)
if err != nil { if err != nil {
return nil return mgr, err
} }
mgr.lessor, err = lease.NewLessor(mgr.store) mgr.lessor, err = lease.NewLessor(mgr.store)
if err != nil { if err != nil {
return nil return mgr, err
} }
mgr.redisClient, err = dc.NewRedisClient(cfg.Redis) mgr.redisClient, err = dc.NewRedisClient(cfg.Redis)
if err != nil { if err != nil {
return nil return mgr, err
} }
mgr.configSvc, err = configsvc.NewConfigSvc(mgr.store, mgr.identifier, mgr.lessor, mgr.redisClient) mgr.configSvc, err = configsvc.NewConfigSvc(mgr.store, mgr.identifier, mgr.lessor, mgr.redisClient)
if err != nil { if err != nil {
return nil return mgr, err
} }
mgr.hostManager, err = host.NewManager(cfg.HostService) mgr.hostManager, err = host.NewManager(cfg.HostService)
if err != nil { if err != nil {
return nil return mgr, err
} }
return mgr return mgr, nil
} }
func (ms *ManagerServer) Close() error { func (ms *ManagerServer) Close() error {