github.com/artisanhe/tools@v1.0.1-0.20210607022958-19a8fef2eb04/cmd/cmd_gen_client.go (about) 1 package cmd 2 3 import ( 4 "github.com/spf13/cobra" 5 6 "github.com/artisanhe/tools/codegen" 7 "github.com/artisanhe/tools/courier/client/gen" 8 ) 9 10 var ( 11 cmdGenClientFlagName string 12 cmdGenClientFlagFile string 13 cmdGenClientFlagSpecURL string 14 ) 15 16 var cmdGenClient = &cobra.Command{ 17 Use: "client", 18 Short: "Generate client from swagger.json", 19 Run: func(cmd *cobra.Command, args []string) { 20 clientGenerator := gen.ClientGenerator{ 21 ServiceName: cmdGenClientFlagName, 22 File: cmdGenClientFlagFile, 23 SpecURL: cmdGenClientFlagSpecURL, 24 BaseClient: "github.com/artisanhe/tools/courier/client.Client", 25 } 26 codegen.Generate(&clientGenerator) 27 }, 28 } 29 30 func init() { 31 cmdGenClient.Flags(). 32 StringVarP(&cmdGenClientFlagSpecURL, "spec-url", "", "", "client spec url") 33 cmdGenClient.Flags(). 34 StringVarP(&cmdGenClientFlagName, "name", "", "", "service name") 35 cmdGenClient.Flags(). 36 StringVarP(&cmdGenClientFlagFile, "file", "", "", "client spec file") 37 38 cmdGen.AddCommand(cmdGenClient) 39 }