Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'main.go')
-rw-r--r--main.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/main.go b/main.go
index 8d7af93a..46ea2408 100644
--- a/main.go
+++ b/main.go
@@ -80,6 +80,7 @@ func appMain() {
for _, cs := range [][]io.Closer{
createAppListeners(config),
createMetricsListener(config),
+ createStatusListener(config),
} {
defer closeAll(cs)
}
@@ -176,6 +177,25 @@ func createMetricsListener(config *cfg.Config) []io.Closer {
return []io.Closer{l, f}
}
+// createStatusListener returns net.Listener and *os.File instances. The
+// caller must ensure they don't get closed or garbage-collected (which
+// implies closing) too soon.
+func createStatusListener(config *cfg.Config) []io.Closer {
+ addr := config.General.StatusAddress
+ if addr == "" {
+ return nil
+ }
+
+ l, f := createSocket(addr)
+ config.ListenStatus = f.Fd()
+
+ log.WithFields(log.Fields{
+ "listener": addr,
+ }).Debug("Set up status listener")
+
+ return []io.Closer{l, f}
+}
+
func printVersion(showVersion bool, version string) {
if showVersion {
fmt.Fprintf(os.Stdout, "%s\n", version)