Implement start/stop/status methods for servmanager + tests

This commit is contained in:
ionutboangiu
2022-10-19 18:59:34 +03:00
committed by Dan Christian Bogos
parent ad7bd111d1
commit 60a4da69e0
35 changed files with 495 additions and 37 deletions

View File

@@ -48,7 +48,7 @@ func TestAccountSReload(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
acctRPC := make(chan birpc.ClientConnector, 1)

View File

@@ -48,7 +48,7 @@ func TestActionSReload(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
actRPC := make(chan birpc.ClientConnector, 1)

View File

@@ -47,7 +47,7 @@ func TestAnalyzerSReload(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anzRPC := make(chan birpc.ClientConnector, 1)

View File

@@ -49,7 +49,7 @@ func TestAsteriskAgentReload(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
@@ -107,7 +107,7 @@ func TestAsteriskAgentReload2(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -48,7 +48,7 @@ func TestAttributeSReload(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
attrRPC := make(chan birpc.ClientConnector, 1)

View File

@@ -51,7 +51,7 @@ func TestCdrsReload(t *testing.T) {
cfg.ChargerSCfg().Enabled = true
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -47,7 +47,7 @@ func NewCGREngine(cfg *config.CGRConfig, cM *engine.ConnManager, shdWg *sync.Wai
cM: cM, // connection manager
caps: caps, // caps is used to limit RPC CPS
shdWg: shdWg, // wait for shutdown
srvManager: servmanager.NewServiceManager(shdWg, cM, cfg.GetReloadChan()),
srvManager: servmanager.NewServiceManager(shdWg, cM, cfg),
server: server, // Rpc/http server
srvDep: map[string]*sync.WaitGroup{
utils.AnalyzerS: new(sync.WaitGroup),

View File

@@ -53,7 +53,7 @@ func TestChargerSReload(t *testing.T) {
filterSChan <- nil
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
attrS := NewAttributeService(cfg, db, css, filterSChan, server, make(chan birpc.ClientConnector, 1), anz, &DispatcherService{srvsReload: make(map[string]chan struct{})}, srvDep)

View File

@@ -42,7 +42,7 @@ func TestCoreSReload(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
coreRPC := make(chan birpc.ClientConnector, 1)

View File

@@ -50,7 +50,7 @@ func TestDataDBReload(t *testing.T) {
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
cM := engine.NewConnManager(cfg)
db := NewDataDBService(cfg, cM, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -44,7 +44,7 @@ func TestDiameterAgentReload1(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
sS := NewSessionService(cfg, db, filterSChan, server, make(chan birpc.ClientConnector, 1),

View File

@@ -53,7 +53,7 @@ func TestDispatcherSReload(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -51,7 +51,7 @@ func TestDNSAgentReload(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -53,7 +53,7 @@ func TestEventExporterSReload(t *testing.T) {
filterSChan <- nil
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
chS := engine.NewCacheS(cfg, nil, nil, nil)

View File

@@ -60,7 +60,7 @@ func TestEventReaderSReload(t *testing.T) {
}()
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
db := NewDataDBService(cfg, nil, srvDep)

View File

@@ -51,7 +51,7 @@ func TestFreeSwitchAgentReload(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -49,7 +49,7 @@ func TestHTTPAgentReload(t *testing.T) {
}()
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -48,7 +48,7 @@ func TestKamailioAgentReload(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -31,6 +31,7 @@ import (
"github.com/cgrates/birpc"
"github.com/cgrates/birpc/context"
"github.com/cgrates/cgrates/apis"
"github.com/cgrates/cgrates/config"
"github.com/cgrates/cgrates/cores"
"github.com/cgrates/cgrates/engine"
@@ -195,11 +196,9 @@ func cgrInitGuardianSv1(iGuardianSCh chan birpc.ClientConnector, cfg *config.CGR
func cgrInitServiceManagerV1(iServMngrCh chan birpc.ClientConnector,
srvMngr *servmanager.ServiceManager, cfg *config.CGRConfig,
server *cores.Server, anz *AnalyzerService) {
srv, _ := engine.NewServiceWithName(srvMngr, utils.ServiceManager, true)
srv, _ := birpc.NewService(apis.NewServiceManagerV1(srvMngr), utils.EmptyString, false)
if !cfg.DispatcherSCfg().Enabled {
for _, s := range srv {
server.RpcRegister(s)
}
server.RpcRegister(srv)
}
iServMngrCh <- anz.GetInternalCodec(srv, utils.ServiceManager)
}

View File

@@ -67,7 +67,7 @@ func TestLoaderSReload(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -52,7 +52,7 @@ func TestRadiusAgentReload(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
@@ -112,7 +112,7 @@ func TestRadiusAgentReload2(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -43,7 +43,7 @@ func TestRateSReload(t *testing.T) {
filterSChan <- nil
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
chS := engine.NewCacheS(cfg, nil, nil, nil)

View File

@@ -50,7 +50,7 @@ func TestDispatcherHReload(t *testing.T) {
filterSChan := make(chan *engine.FilterS, 1)
filterSChan <- nil
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -55,7 +55,7 @@ func TestResourceSReload(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
db := NewDataDBService(cfg, nil, srvDep)

View File

@@ -50,7 +50,7 @@ func TestRouteSReload(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
db := NewDataDBService(cfg, nil, srvDep)

View File

@@ -46,7 +46,7 @@ func TestSIPAgentReload(t *testing.T) {
shdWg := new(sync.WaitGroup)
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
db := NewDataDBService(cfg, nil, srvDep)
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)

View File

@@ -55,7 +55,7 @@ func TestStatSReload(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
db := NewDataDBService(cfg, nil, srvDep)

View File

@@ -51,7 +51,7 @@ func TestThresholdSReload(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
db := NewDataDBService(cfg, nil, srvDep)
@@ -120,7 +120,7 @@ func TestThresholdSReload2(t *testing.T) {
chSCh <- chS
css := &CacheService{cacheCh: chSCh}
server := cores.NewServer(nil)
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg.GetReloadChan())
srvMngr := servmanager.NewServiceManager(shdWg, nil, cfg)
srvDep := map[string]*sync.WaitGroup{utils.DataDB: new(sync.WaitGroup)}
anz := NewAnalyzerService(cfg, server, filterSChan, make(chan birpc.ClientConnector, 1), srvDep)
db := NewDataDBService(cfg, nil, srvDep)