mirror of
https://github.com/m1k1o/neko.git
synced 2024-07-24 14:40:50 +12:00
42 lines
753 B
Go
42 lines
753 B
Go
|
package cmd
|
||
|
|
||
|
import (
|
||
|
"github.com/rs/zerolog/log"
|
||
|
"github.com/spf13/cobra"
|
||
|
|
||
|
"n.eko.moe/neko"
|
||
|
"n.eko.moe/neko/internal/types/config"
|
||
|
)
|
||
|
|
||
|
func init() {
|
||
|
command := &cobra.Command{
|
||
|
Use: "serve",
|
||
|
Short: "serve neko streaming server",
|
||
|
Long: `serve neko streaming server`,
|
||
|
Run: neko.Service.ServeCommand,
|
||
|
}
|
||
|
|
||
|
configs := []config.Config{
|
||
|
neko.Service.Server,
|
||
|
neko.Service.WebRTC,
|
||
|
neko.Service.Remote,
|
||
|
neko.Service.Broadcast,
|
||
|
neko.Service.WebSocket,
|
||
|
}
|
||
|
|
||
|
cobra.OnInitialize(func() {
|
||
|
for _, cfg := range configs {
|
||
|
cfg.Set()
|
||
|
}
|
||
|
neko.Service.Preflight()
|
||
|
})
|
||
|
|
||
|
for _, cfg := range configs {
|
||
|
if err := cfg.Init(command); err != nil {
|
||
|
log.Panic().Err(err).Msg("unable to run serve command")
|
||
|
}
|
||
|
}
|
||
|
|
||
|
root.AddCommand(command)
|
||
|
}
|