diff options
Diffstat (limited to 'cmd/server/main.go')
| -rw-r--r-- | cmd/server/main.go | 38 | 
1 files changed, 35 insertions, 3 deletions
| diff --git a/cmd/server/main.go b/cmd/server/main.go index fded184fa..7a509e96f 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -19,10 +19,42 @@  package main  import ( -	"github.com/gotosocial/gotosocial/internal/client" +	"context" +	"os" +	"os/signal" +	"syscall" + +	"github.com/gotosocial/gotosocial/internal/db" +	"github.com/sirupsen/logrus"  )  func main() { -	router := client.NewRouter() -	router.Route() +	log := logrus.New() +	ctx := context.Background() +	dbConfig := &db.Config{ +		Type:            "POSTGRES", +		Address:         "", +		Port:            5432, +		User:            "", +		Password:        "whatever", +		Database:        "postgres", +		ApplicationName: "gotosocial", +	} +	dbService, err := db.NewService(ctx, dbConfig, log) +	if err != nil { +		panic(err) +	} + +	// catch shutdown signals from the operating system +	sigs := make(chan os.Signal, 1) +	signal.Notify(sigs, os.Interrupt, syscall.SIGTERM) +	sig := <-sigs +	log.Infof("received signal %s, shutting down", sig) + +	// close down all running services in order +	if err := dbService.Stop(ctx); err != nil { +		log.Errorf("error closing dbservice: %s", err) +	} + +	log.Info("done! exiting...")  } | 
