diff --git a/.golangci.yml b/.golangci.yml index 627db839751e789386ee990f32a916e0bffad3fd..a882beaad1baa345498d1d6618bb350bf5544528 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -79,6 +79,7 @@ linters-settings: gosec: excludes: - "G104" + - "G114" - "G115" - "G204" - "G304" diff --git a/cmd/vmine/main.go b/cmd/vmine/main.go index 39b97239e9c7947ad9cc34b3bf604ee81a544f38..c31d9e0bba63f762069b0a7c79770273ac7288d1 100644 --- a/cmd/vmine/main.go +++ b/cmd/vmine/main.go @@ -122,8 +122,13 @@ func main() { }() signal.Notify(termCh, syscall.SIGTERM, syscall.SIGINT) - // Spawn the HTTP server on a goroutine. - go http.ListenAndServe(*addr, vmine.NewHTTPEngine(engine)) + // Spawn the HTTP server on a goroutine. Errors will cause the + // process to abort (no clean shutdown). + go func() { + if err := http.ListenAndServe(*addr, vmine.NewHTTPEngine(engine)); err != nil && !errors.Is(err, http.ErrServerClosed) { + log.Fatal(err) + } + }() engine.Wait() }