docs: add releasing process documentation
chore: update go.mod dependencies and versions chore: update go.sum with new dependency versions scripts: add coverage check script scripts: add release notes generation script test: refactor tests to use goconvey for assertions test: enhance webserver tests with additional cases and goconvey fix: improve error logging in web server start and stop methods
This commit is contained in:
+16
-21
@@ -22,6 +22,10 @@ import (
|
||||
log "scm.yoorie.de/go-lib/gelf"
|
||||
)
|
||||
|
||||
const (
|
||||
errStartingServerLog = "error starting server: %s"
|
||||
)
|
||||
|
||||
type WebServerConfiguration struct {
|
||||
Host string `yaml:"host"`
|
||||
Port int `default:"7080" yaml:"port"`
|
||||
@@ -202,26 +206,13 @@ func (server *WebServer) Start() error {
|
||||
server.DebugRoutes("Main", server.router)
|
||||
server.DebugRoutes("Health", server.healthRouter)
|
||||
if ssl {
|
||||
err := server.setupSsl()
|
||||
if err != nil {
|
||||
if err := server.setupSsl(); err != nil {
|
||||
return err
|
||||
}
|
||||
} else {
|
||||
// own http server for the healthchecks
|
||||
httpAddress := server.serviceConfig.BuildHostAddress(false)
|
||||
server.srv = &http.Server{
|
||||
Addr: httpAddress,
|
||||
WriteTimeout: time.Second * 15,
|
||||
ReadTimeout: time.Second * 15,
|
||||
IdleTimeout: time.Second * 60,
|
||||
Handler: server.router,
|
||||
if err := server.setupHttp(); err != nil {
|
||||
return err
|
||||
}
|
||||
go func() {
|
||||
log.Infof("Starting http server on address: %s", server.srv.Addr)
|
||||
if err := server.srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
|
||||
log.Alertf("error starting server: %s", err.Error())
|
||||
}
|
||||
}()
|
||||
}
|
||||
return nil
|
||||
}
|
||||
@@ -239,7 +230,7 @@ func (server *WebServer) setupHttp() error {
|
||||
go func() {
|
||||
log.Infof("Starting http server on address: %s", server.srv.Addr)
|
||||
if err := server.srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
|
||||
log.Alertf("error starting server: %s", err.Error())
|
||||
log.Alertf(errStartingServerLog, err.Error())
|
||||
}
|
||||
}()
|
||||
return nil
|
||||
@@ -263,7 +254,7 @@ func (server *WebServer) setupSsl() error {
|
||||
go func() {
|
||||
log.Infof("Starting https server on address: %s", server.sslsrv.Addr)
|
||||
if err := server.sslsrv.ListenAndServeTLS("", ""); err != nil && err != http.ErrServerClosed {
|
||||
log.Alertf("error starting server: %s", err.Error())
|
||||
log.Alertf(errStartingServerLog, err.Error())
|
||||
}
|
||||
}()
|
||||
httpAddress := server.serviceConfig.BuildHostAddress(false)
|
||||
@@ -277,7 +268,7 @@ func (server *WebServer) setupSsl() error {
|
||||
go func() {
|
||||
log.Infof("Starting http server on address: %s", server.srv.Addr)
|
||||
if err := server.srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
|
||||
log.Alertf("error starting server: %s", err.Error())
|
||||
log.Alertf(errStartingServerLog, err.Error())
|
||||
}
|
||||
}()
|
||||
return nil
|
||||
@@ -296,9 +287,13 @@ func (server *WebServer) Stop() {
|
||||
defer cancel()
|
||||
|
||||
log.Info("Shutting down server ...")
|
||||
server.srv.Shutdown(ctx)
|
||||
if err := server.srv.Shutdown(ctx); err != nil {
|
||||
log.Alertf("error shutting down http server: %s", err.Error())
|
||||
}
|
||||
if server.isSsl() {
|
||||
server.sslsrv.Shutdown(ctx)
|
||||
if err := server.sslsrv.Shutdown(ctx); err != nil {
|
||||
log.Alertf("error shutting down https server: %s", err.Error())
|
||||
}
|
||||
}
|
||||
log.Info("Server has been shutted down")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user