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
import (
"os"
"d7y.io/dragonfly/v2/manager/apis/v2/handler"
"d7y.io/dragonfly/v2/manager/config"
"d7y.io/dragonfly/v2/manager/server/service"
logger "d7y.io/dragonfly/v2/pkg/dflog"
"github.com/gin-gonic/gin"
swaggerFiles "github.com/swaggo/files"
ginSwagger "github.com/swaggo/gin-swagger"
@ -27,7 +30,12 @@ import (
// @host localhost:8080
// @BasePath /api/v2
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()
handler := handler.NewHandler(server)

View File

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

View File

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