diff options
author | Ahmad Sherif <me@ahmadsherif.com> | 2016-12-22 17:57:08 +0300 |
---|---|---|
committer | Ahmad Sherif <me@ahmadsherif.com> | 2016-12-23 22:14:07 +0300 |
commit | 8504da78fdb90da74b7fe9b55296c1967c902851 (patch) | |
tree | fe2e38be3ffc6e9e2eff6d41dee2cc1eaa480a46 | |
parent | e32c0ad734100057234a2f9e2b255fc8ac3162d5 (diff) |
Replace old TCP server with an HTTP server
-rw-r--r-- | cmd/gitaly/main.go | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/cmd/gitaly/main.go b/cmd/gitaly/main.go index 3c6df166d..d820d8e0f 100644 --- a/cmd/gitaly/main.go +++ b/cmd/gitaly/main.go @@ -2,6 +2,7 @@ package main import ( "log" + "net" "net/http" "os" "os/signal" @@ -9,11 +10,10 @@ import ( "github.com/kelseyhightower/envconfig" "github.com/prometheus/client_golang/prometheus/promhttp" - - serv "gitlab.com/gitlab-org/gitaly/server" ) type Config struct { + SocketPath string `split_words:"true"` PrometheusListenAddr string `split_words:"true"` } @@ -27,8 +27,23 @@ func main() { log.Fatal(err) } + if config.SocketPath == "" { + log.Fatal("GITALY_SOCKET_PATH environment variable is not set") + } + + if err := os.Remove(config.SocketPath); err != nil && !os.IsNotExist(err) { + log.Fatal(err) + } + + listener, err := net.Listen("unix", config.SocketPath) + if err != nil { + log.Fatal(err) + } + log.Println("Listening on socket", config.SocketPath) + go func() { - server.Serve("0.0.0.0:6666", serv.CommandExecutor) + // TODO: Add a handler + http.Serve(listener, nil) }() if config.PrometheusListenAddr != "" { @@ -41,6 +56,7 @@ func main() { select { case <-ch: - server.Stop() + log.Println("Received shutdown message") + listener.Close() } } |