github.com/yoogoc/kratos-scaffold@v0.0.0-20240402032722-a538b3c18955/project_generator/resources/cmd.server.go.tmpl (about) 1 {{- /*gotype: github.com/yoogoc/kratos-scaffold/project_generator.CmdTmpl*/ -}} 2 package main 3 4 import ( 5 "github.com/go-kratos/kratos/v2" 6 "github.com/go-kratos/kratos/v2/log" 7 "github.com/go-kratos/kratos/v2/transport/grpc" 8 "github.com/go-kratos/kratos/v2/transport/http" 9 "github.com/google/wire" 10 "github.com/spf13/cobra" 11 ) 12 13 type ServerCommand cobra.Command 14 15 {{- if .IsBff }} 16 var ProviderSet = wire.NewSet(NewServerCmd) 17 {{- else }} 18 var ProviderSet = wire.NewSet(NewServerCmd, NewMigrateCmd) 19 {{- end }} 20 21 func NewServerCmd(logger log.Logger, gs *grpc.Server, hs *http.Server) *ServerCommand { 22 return &ServerCommand{ 23 Use: "server", 24 Short: "begin service", 25 Long: `begin service`, 26 FParseErrWhitelist: cobra.FParseErrWhitelist{UnknownFlags: true}, 27 RunE: func(cmd *cobra.Command, args []string) error { 28 app := kratos.New( 29 kratos.Name(Name), 30 kratos.Version(Version), 31 kratos.Metadata(map[string]string{}), 32 kratos.Logger(logger), 33 kratos.Server( 34 gs, 35 hs, 36 ), 37 ) 38 return app.Run() 39 }, 40 } 41 }