Files
mautrix-discord/run/cmd.go
Gary Kramlich d883befee5 Basic provisioning api
Includes: login, logout, and ping.
2022-02-22 02:51:22 -06:00

40 lines
588 B
Go

package run
import (
"fmt"
"os"
"os/signal"
"syscall"
"gitlab.com/beeper/discord/bridge"
"gitlab.com/beeper/discord/config"
"gitlab.com/beeper/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
}