github.com/wawandco/ox@v0.13.6-0.20230809142027-913b3d837f2a/plugins/base/build/flags.go (about) 1 package build 2 3 import ( 4 "github.com/spf13/pflag" 5 "github.com/wawandco/ox/plugins/core" 6 ) 7 8 func (b *Command) ParseFlags(args []string) { 9 for _, plugin := range b.builders { 10 fp, ok := plugin.(core.FlagParser) 11 if !ok { 12 continue 13 } 14 15 fp.ParseFlags(args) 16 } 17 } 18 19 func (b *Command) Flags() *pflag.FlagSet { 20 fs := pflag.NewFlagSet("build", pflag.ContinueOnError) 21 fs.Usage = func() {} 22 23 for _, plugin := range b.buildPlugins { 24 fp, ok := plugin.(core.FlagParser) 25 if !ok { 26 continue 27 } 28 29 fp.Flags().VisitAll(func(f *pflag.Flag) { 30 fs.AddFlag(f) 31 }) 32 } 33 34 return fs 35 }