test cobra

This commit is contained in:
wangchuxiao 2023-03-07 18:06:57 +08:00
parent 13132efc6c
commit 6eb13df2e2
2 changed files with 9 additions and 5 deletions

View File

@ -30,7 +30,7 @@ func main() {
startCmd.Flags().IntP(constant.FlagPort, "p", 0, "Port to listen on")
startCmd.Flags().StringP(constant.FlagConf, "c", "", "Path to config file folder")
rootCmd := cmd.NewRootCmd()
cobra.Command(rootCmd).AddCommand(startCmd)
rootCmd.Command.AddCommand(startCmd)
if err := startCmd.Execute(); err != nil {
fmt.Println(err)
os.Exit(1)

View File

@ -6,7 +6,9 @@ import (
"github.com/spf13/cobra"
)
type RootCmd cobra.Command
type RootCmd struct {
Command cobra.Command
}
func NewRootCmd() RootCmd {
c := cobra.Command{
@ -18,11 +20,13 @@ func NewRootCmd() RootCmd {
},
}
c.Flags()
return RootCmd(c)
rootCmd := RootCmd{Command: c}
rootCmd.init()
return rootCmd
}
func (r RootCmd) Init() {
cobra.Command(r).Flags().StringP(constant.FlagConf, "c", "", "Path to config file folder")
func (r RootCmd) init() {
r.Command.Flags().StringP(constant.FlagConf, "c", "", "Path to config file folder")
}
func getConfFromCmdAndInit(cmdLines *cobra.Command) error {