Files
docker-cli/components/engine/systemd/sd_notify.go
Victor Vieux 9684769cb6 sd_notify ready status when accepting API requests
Upstream-commit: 97088ebef7c638f8175d7c61934642eeb2c054c4
Component: engine
2013-12-04 17:50:20 -08:00

34 lines
534 B
Go

package systemd
import (
"errors"
"net"
"os"
)
var SdNotifyNoSocket = errors.New("No socket")
// Send a message to the init daemon. It is common to ignore the error.
func SdNotify(state string) error {
socketAddr := &net.UnixAddr{
Name: os.Getenv("NOTIFY_SOCKET"),
Net: "unixgram",
}
if socketAddr.Name == "" {
return SdNotifyNoSocket
}
conn, err := net.DialUnix(socketAddr.Net, nil, socketAddr)
if err != nil {
return err
}
_, err = conn.Write([]byte(state))
if err != nil {
return err
}
return nil
}