From abb7f566dedb7f6dc640a2c24a672cf96c4f1c48 Mon Sep 17 00:00:00 2001 From: Carmine Di Monaco Date: Wed, 8 Jan 2025 15:17:06 +0100 Subject: [PATCH] Main flag parsing fixed --- cmd/workbench.go | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/cmd/workbench.go b/cmd/workbench.go index 49c67c1..36211c5 100644 --- a/cmd/workbench.go +++ b/cmd/workbench.go @@ -11,27 +11,28 @@ import ( "github.com/trento-project/workbench/pkg/operator" ) -type opts struct { +type cliOptions struct { Arguments string `long:"arguments" short:"a" description:"Json arguments of an operator" required:"true"` Verbose bool `long:"verbose" short:"v" description:"Log verbosity"` } +var options cliOptions +var flagParser = flags.NewParser(&options, flags.Default) //nolint + func main() { ctx := context.Background() - var opts opts - _, err := flags.Parse(&opts) + args, err := flagParser.Parse() if err != nil { os.Exit(1) } logger := logrus.StandardLogger() - if opts.Verbose { + if options.Verbose { logger.SetLevel(logrus.DebugLevel) } - operatorName := os.Args[1] - + operatorName := args[0] registry := operator.StandardRegistry(operator.WithCustomLogger(logger)) builder, err := registry.GetOperatorBuilder(operatorName) @@ -40,15 +41,15 @@ func main() { } opArgs := make(operator.OperatorArguments) - err = json.Unmarshal([]byte(opts.Arguments), &opArgs) + err = json.Unmarshal([]byte(options.Arguments), &opArgs) if err != nil { - logger.Fatalf("could not unmarhsal %s into arguments", opts.Arguments) + logger.Fatalf("could not unmarhsal %s into arguments", options.Arguments) } logger.Infof( "starting execution with operator: %s - arguments: %s", operatorName, - opts.Arguments, + options.Arguments, ) op := builder("test-cli", opArgs)