Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
fix startup race condition
  • Loading branch information
KnicKnic authored and yyyar committed Jan 23, 2020
1 parent c528d8f commit 284e9fc
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 19 deletions.
10 changes: 5 additions & 5 deletions main.go
Expand Up @@ -79,14 +79,14 @@ func main() {
// Configure logging
logging.Configure(cfg.Logging.Output, cfg.Logging.Level, cfg.Logging.Format)

// Start API
go api.Start((*cfg).Api)
// Start manager
manager.Initialize(*cfg)

/* setup metrics */
go metrics.Start((*cfg).Metrics)
metrics.Start((*cfg).Metrics)

// Start manager
go manager.Initialize(*cfg)
// Start API
api.Start((*cfg).Api)

// block forever
<-(chan string)(nil)
Expand Down
29 changes: 15 additions & 14 deletions src/api/api.go
Expand Up @@ -67,18 +67,19 @@ func Start(cfg config.ApiConfig) {
p := app.Group("/")
attachPublic(p)

var err error
/* start rest api server */
if cfg.Tls != nil {
log.Info("Starting HTTPS server ", cfg.Bind)
err = app.RunTLS(cfg.Bind, cfg.Tls.CertPath, cfg.Tls.KeyPath)
} else {
log.Info("Starting HTTP server ", cfg.Bind)
err = app.Run(cfg.Bind)
}

if err != nil {
log.Fatal(err)
}

go func() {
var err error
/* start rest api server */
if cfg.Tls != nil {
log.Info("Starting HTTPS server ", cfg.Bind)
err = app.RunTLS(cfg.Bind, cfg.Tls.CertPath, cfg.Tls.KeyPath)
} else {
log.Info("Starting HTTP server ", cfg.Bind)
err = app.Run(cfg.Bind)
}

if err != nil {
log.Fatal(err)
}
}()
}

0 comments on commit 284e9fc

Please sign in to comment.