Merge PR #6450: Some small improve on API server

This commit is contained in:
Jonathan Gimeno 2020-06-16 19:31:35 +02:00 committed by GitHub
parent 8ee7d1f403
commit 76ee9b29ac
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 3 deletions

View File

@ -81,6 +81,11 @@ func (s *Server) Start(cfg config.Config) error {
return tmrpcserver.Serve(s.listener, s.Router, s.logger, tmCfg)
}
// Close closes the API server.
func (s *Server) Close() error {
return s.listener.Close()
}
func (s *Server) registerSwaggerUI() {
statikFS, err := fs.New()
if err != nil {

View File

@ -153,6 +153,7 @@ func GetConfig() Config {
PrometheusRetentionTime: viper.GetInt64("telemetry.prometheus-retention-time"),
},
API: APIConfig{
Enable: viper.GetBool("api.enable"),
Address: viper.GetString("api.address"),
MaxOpenConnections: viper.GetUint("api.max-open-connections"),
RPCReadTimeout: viper.GetUint("api.rpc-read-timeout"),

View File

@ -192,7 +192,9 @@ func startInProcess(ctx *Context, cdc codec.JSONMarshaler, appCreator AppCreator
return err
}
if viper.GetBool("api.enable") {
config := config.GetConfig()
var apiSrv *api.Server
if config.API.Enable {
genDoc, err := genDocProvider()
if err != nil {
return err
@ -208,10 +210,10 @@ func startInProcess(ctx *Context, cdc codec.JSONMarshaler, appCreator AppCreator
WithClient(local.New(tmNode)).
WithTrustNode(true)
apiSrv := api.New(ctx)
apiSrv = api.New(ctx)
app.RegisterAPIRoutes(apiSrv)
if err := apiSrv.Start(config.GetConfig()); err != nil {
if err := apiSrv.Start(config); err != nil {
return err
}
}
@ -245,6 +247,10 @@ func startInProcess(ctx *Context, cdc codec.JSONMarshaler, appCreator AppCreator
cpuProfileCleanup()
}
if apiSrv != nil {
_ = apiSrv.Close()
}
ctx.Logger.Info("exiting...")
})