chrly/cmd/root.go

47 lines
873 B
Go
Raw Normal View History

package cmd
import (
"fmt"
"os"
2020-01-05 23:09:17 +05:30
"os/signal"
"strings"
2020-01-05 23:09:17 +05:30
"syscall"
"github.com/spf13/cobra"
"github.com/spf13/viper"
2020-01-03 03:21:57 +05:30
"github.com/elyby/chrly/version"
)
var RootCmd = &cobra.Command{
2018-02-15 02:19:22 +05:30
Use: "chrly",
Short: "Implementation of Minecraft skins system server",
2020-01-03 03:21:57 +05:30
Version: version.Version(),
}
// Execute adds all child commands to the root command and sets flags appropriately.
// This is called by main.main(). It only needs to happen once to the rootCmd.
func Execute() {
if err := RootCmd.Execute(); err != nil {
fmt.Println(err)
os.Exit(1)
}
}
2018-01-24 04:09:40 +05:30
func init() {
cobra.OnInitialize(initConfig)
}
func initConfig() {
viper.AutomaticEnv()
replacer := strings.NewReplacer(".", "_")
viper.SetEnvKeyReplacer(replacer)
}
2020-01-05 23:09:17 +05:30
func waitForExitSignal() os.Signal {
ch := make(chan os.Signal, 1)
signal.Notify(ch, syscall.SIGINT, syscall.SIGTERM)
return <-ch
}