Use sdnotify for systemd (#768)

* Use sdnotify for systemd

This is useful if a configuration is long to load.
Systemd will continue dependency chain only when server have finish to start.

https://www.freedesktop.org/software/systemd/man/systemd.service.html#Type=

* Extract the waiting behavior from Start()
This commit is contained in:
Guilhem Lettron 2016-10-25 17:59:39 +02:00 committed by Vincent Demeester
parent 870f378782
commit 649cb548d0
5 changed files with 24 additions and 4 deletions

View file

@ -91,7 +91,7 @@ func NewServer(globalConfiguration GlobalConfiguration) *Server {
return server
}
// Start starts the server and blocks until server is shutted down.
// Start starts the server.
func (server *Server) Start() {
server.startHTTPServers()
server.startLeadership()
@ -104,6 +104,10 @@ func (server *Server) Start() {
server.configureProviders()
server.startProviders()
go server.listenSignals()
}
// Wait blocks until server is shutted down.
func (server *Server) Wait() {
<-server.stopChan
}