Strict configuration parsing (#3773)

* Test configuration loading more precisely

* Add strict configuration parsing
This commit is contained in:
Aarni Koskela
2023-11-16 09:42:49 +02:00
committed by GitHub
parent 184223cb2f
commit e8deb65c4b
11 changed files with 119 additions and 47 deletions

View File

@@ -57,7 +57,7 @@ func (svr *Service) apiReload(w http.ResponseWriter, _ *http.Request) {
}
}()
cliCfg, pxyCfgs, visitorCfgs, _, err := config.LoadClientConfig(svr.cfgFile)
cliCfg, pxyCfgs, visitorCfgs, _, err := config.LoadClientConfig(svr.cfgFile, svr.strictConfig)
if err != nil {
res.Code = 400
res.Msg = err.Error()

View File

@@ -70,6 +70,9 @@ type Service struct {
// string if no configuration file was used.
cfgFile string
// Whether strict configuration parsing had been requested.
strictConfig bool
// service context
ctx context.Context
// call cancel to stop service
@@ -82,14 +85,16 @@ func NewService(
pxyCfgs []v1.ProxyConfigurer,
visitorCfgs []v1.VisitorConfigurer,
cfgFile string,
strictConfig bool,
) *Service {
return &Service{
authSetter: auth.NewAuthSetter(cfg.Auth),
cfg: cfg,
cfgFile: cfgFile,
pxyCfgs: pxyCfgs,
visitorCfgs: visitorCfgs,
ctx: context.Background(),
authSetter: auth.NewAuthSetter(cfg.Auth),
cfg: cfg,
cfgFile: cfgFile,
strictConfig: strictConfig,
pxyCfgs: pxyCfgs,
visitorCfgs: visitorCfgs,
ctx: context.Background(),
}
}