Files
mautrix-discord/run/cmd.go
2022-05-20 16:37:41 +03:00

40 lines
588 B
Go

package run
import (
"fmt"
"os"
"os/signal"
"syscall"
"go.mau.fi/mautrix-discord/bridge"
"go.mau.fi/mautrix-discord/config"
"go.mau.fi/mautrix-discord/globals"
)
type Cmd struct{}
func (c *Cmd) Run(g *globals.Globals) error {
fmt.Printf("g.Config: %q\n", g.Config)
cfg, err := config.FromFile(g.Config)
if err != nil {
return err
}
bridge, err := bridge.New(cfg)
if err != nil {
return err
}
if err := bridge.Start(); err != nil {
return err
}
ch := make(chan os.Signal)
signal.Notify(ch, os.Interrupt, syscall.SIGTERM)
<-ch
bridge.Stop()
return nil
}