Merge branch '10669-safe-http-cache'
[arvados.git] / services / ws / main.go
index 7c3625bdad2df51ee652122b807d4dafeb892349..b2b86705cc1b40cef16edd0060fc13977e41e17d 100644 (file)
@@ -3,12 +3,9 @@ package main
 import (
        "flag"
        "fmt"
-       "net/http"
-       "time"
 
        "git.curoverse.com/arvados.git/sdk/go/config"
        "git.curoverse.com/arvados.git/sdk/go/ctxlog"
-       "github.com/coreos/go-systemd/daemon"
 )
 
 var logger = ctxlog.FromContext
@@ -39,29 +36,6 @@ func main() {
        }
 
        log.Info("started")
-       eventSource := &pgEventSource{
-               DataSource: cfg.Postgres.ConnectionString(),
-               QueueSize:  cfg.ServerEventQueue,
-       }
-       srv := &http.Server{
-               Addr:           cfg.Listen,
-               ReadTimeout:    time.Minute,
-               WriteTimeout:   time.Minute,
-               MaxHeaderBytes: 1 << 20,
-               Handler: &router{
-                       Config:         &cfg,
-                       eventSource:    eventSource,
-                       newPermChecker: func() permChecker { return newPermChecker(cfg.Client) },
-               },
-       }
-       // Bootstrap the eventSource by attaching a dummy subscriber
-       // and hanging up.
-       eventSource.NewSink().Stop()
-
-       if _, err := daemon.SdNotify(false, "READY=1"); err != nil {
-               log.WithError(err).Warn("error notifying init daemon")
-       }
-
-       log.WithField("Listen", srv.Addr).Info("listening")
-       log.Fatal(srv.ListenAndServe())
+       srv := &server{wsConfig: &cfg}
+       log.Fatal(srv.Run())
 }