Skip to content

Commit d0ef6ca

Browse files
author
ismael FALL
committed
feat: use commonFlagsBuilder as a method
Signed-off-by: ismael FALL <[email protected]>
1 parent 42eb923 commit d0ef6ca

File tree

3 files changed

+19
-21
lines changed

3 files changed

+19
-21
lines changed

go/cmd/yolo/main.go

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@ import (
3030
ff "github.com/peterbourgon/ff/v3"
3131
)
3232

33-
type flagsBuilder func(fs *flag.FlagSet)
34-
3533
type GlobalOptions struct {
3634
verbose bool
3735
logFormat string
@@ -40,6 +38,12 @@ type GlobalOptions struct {
4038
server server
4139
}
4240

41+
func (g *GlobalOptions) commonFlagsBuilder(fs *flag.FlagSet) {
42+
fs.BoolVar(&g.verbose, "v", false, "increase log verbosity")
43+
fs.StringVar(&g.logFormat, "log-format", "console", strings.Join(zapconfig.AvailablePresets, ", "))
44+
fs.StringVar(&g.dbStorePath, "db-path", ":memory:", "DB Store path")
45+
}
46+
4347
var optsGlobal = &GlobalOptions{}
4448

4549
func main() {
@@ -56,20 +60,14 @@ func yolo(args []string) error {
5660
rand.Seed(time.Now().UnixNano())
5761
rootFlagSet.SetOutput(os.Stderr)
5862

59-
commonFlagsBuilder := func(fs *flag.FlagSet) {
60-
fs.BoolVar(&optsGlobal.verbose, "v", false, "increase log verbosity")
61-
fs.StringVar(&optsGlobal.logFormat, "log-format", "console", strings.Join(zapconfig.AvailablePresets, ", "))
62-
fs.StringVar(&optsGlobal.dbStorePath, "db-path", ":memory:", "DB Store path")
63-
}
64-
6563
root := &climan.Command{
6664
ShortUsage: `server [flags] <subcommand>`,
67-
FlagSetBuilder: commonFlagsBuilder,
65+
FlagSetBuilder: optsGlobal.commonFlagsBuilder,
6866
Subcommands: []*climan.Command{
69-
serverCommand(commonFlagsBuilder),
70-
dumpObjectsCommand(commonFlagsBuilder),
71-
infoCommand(commonFlagsBuilder),
72-
treeCommand(commonFlagsBuilder),
67+
serverCommand(),
68+
dumpObjectsCommand(),
69+
infoCommand(),
70+
treeCommand(),
7371
},
7472
FFOptions: []ff.Option{ff.WithEnvVarNoPrefix()},
7573
Exec: func(_ context.Context, _ []string) error {

go/cmd/yolo/server.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,13 +71,13 @@ func (s server) parse(fs *flag.FlagSet) {
7171
fs.StringVar(&optsGlobal.server.iosPrivkeyPass, "ios-pass", "", "iOS signing: password for private key or p12 file")
7272
}
7373

74-
func serverCommand(commonFlagsBuilder flagsBuilder) *climan.Command {
74+
func serverCommand() *climan.Command {
7575
return &climan.Command{
7676
Name: `server`,
7777
ShortHelp: `Start a Yolo Server`,
7878
FFOptions: []ff.Option{ff.WithEnvVarNoPrefix()},
7979
FlagSetBuilder: func(fs *flag.FlagSet) {
80-
commonFlagsBuilder(fs)
80+
optsGlobal.commonFlagsBuilder(fs)
8181
optsGlobal.server.parse(fs)
8282
},
8383
Exec: func(ctx context.Context, _ []string) error {

go/cmd/yolo/store.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ import (
1212
"github.com/peterbourgon/ff/v3"
1313
)
1414

15-
func dumpObjectsCommand(commonFlagsBuilder flagsBuilder) *climan.Command {
15+
func dumpObjectsCommand() *climan.Command {
1616
return &climan.Command{
1717
Name: `dump-objects`,
18-
FlagSetBuilder: commonFlagsBuilder,
18+
FlagSetBuilder: optsGlobal.commonFlagsBuilder,
1919
FFOptions: []ff.Option{ff.WithEnvVarNoPrefix()},
2020
Exec: func(_ context.Context, _ []string) error {
2121
logger, err := loggerFromArgs(optsGlobal.verbose, optsGlobal.logFormat)
@@ -51,10 +51,10 @@ func dumpObjectsCommand(commonFlagsBuilder flagsBuilder) *climan.Command {
5151
}
5252
}
5353

54-
func treeCommand(commonFlagsBuilder flagsBuilder) *climan.Command {
54+
func treeCommand() *climan.Command {
5555
return &climan.Command{
5656
Name: `tree`,
57-
FlagSetBuilder: commonFlagsBuilder,
57+
FlagSetBuilder: optsGlobal.commonFlagsBuilder,
5858
FFOptions: []ff.Option{ff.WithEnvVarNoPrefix()},
5959
Exec: func(ctx context.Context, _ []string) error {
6060
logger, err := loggerFromArgs(optsGlobal.verbose, optsGlobal.logFormat)
@@ -89,10 +89,10 @@ func treeCommand(commonFlagsBuilder flagsBuilder) *climan.Command {
8989
}
9090
}
9191

92-
func infoCommand(commonFlagsBuilder flagsBuilder) *climan.Command {
92+
func infoCommand() *climan.Command {
9393
return &climan.Command{
9494
Name: `info`,
95-
FlagSetBuilder: commonFlagsBuilder,
95+
FlagSetBuilder: optsGlobal.commonFlagsBuilder,
9696
FFOptions: []ff.Option{ff.WithEnvVarNoPrefix()},
9797
Exec: func(_ context.Context, _ []string) error {
9898
logger, err := loggerFromArgs(optsGlobal.verbose, optsGlobal.logFormat)

0 commit comments

Comments
 (0)