This is an automated email from the ASF dual-hosted git repository. lburgazzoli pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit f217ed0d857ac9ea0d911b4a6eb179719606f8df Author: Andrea Tarocchi <[email protected]> AuthorDate: Wed Dec 18 10:15:08 2019 +0100 Fixed a reference to command options not being propagated correctly. --- pkg/cmd/root.go | 44 +++++++++++++++++++++----------------------- pkg/cmd/root_test.go | 24 +++++++++++++----------- pkg/cmd/run_test.go | 6 +++--- 3 files changed, 37 insertions(+), 37 deletions(-) diff --git a/pkg/cmd/root.go b/pkg/cmd/root.go index c1ed396..8f1450c 100644 --- a/pkg/cmd/root.go +++ b/pkg/cmd/root.go @@ -48,14 +48,14 @@ func NewKamelCommand(ctx context.Context) (*cobra.Command, error) { } var err error - cmd := kamelPreAddCommandInit(options) - cmd = addKamelSubcommands(*cmd, options) - cmd, err = kamelPostAddCommandInit(*cmd) + cmd := kamelPreAddCommandInit(&options) + addKamelSubcommands(cmd, &options) + err = kamelPostAddCommandInit(cmd) return cmd, err } -func kamelPreAddCommandInit(options RootCmdOptions) *cobra.Command { +func kamelPreAddCommandInit(options *RootCmdOptions) *cobra.Command { var cmd = cobra.Command{ BashCompletionFunction: bashCompletionFunction, @@ -71,9 +71,9 @@ func kamelPreAddCommandInit(options RootCmdOptions) *cobra.Command { return &cmd } -func kamelPostAddCommandInit(cmd cobra.Command) (*cobra.Command, error) { - if err := bindPFlagsHierarchy(&cmd); err != nil { - return nil, err +func kamelPostAddCommandInit(cmd *cobra.Command) error { + if err := bindPFlagsHierarchy(cmd); err != nil { + return err } configName := os.Getenv("KAMEL_CONFIG_NAME") @@ -92,29 +92,27 @@ func kamelPostAddCommandInit(cmd cobra.Command) (*cobra.Command, error) { if err := viper.ReadInConfig(); err != nil { if _, ok := err.(viper.ConfigFileNotFoundError); !ok { - return nil, err + return err } } - return &cmd, nil + return nil } -func addKamelSubcommands(cmd cobra.Command, options RootCmdOptions) *cobra.Command { - cmd.AddCommand(newCmdCompletion(&cmd)) +func addKamelSubcommands(cmd *cobra.Command, options *RootCmdOptions) { + cmd.AddCommand(newCmdCompletion(cmd)) cmd.AddCommand(newCmdVersion()) - cmd.AddCommand(cmdOnly(newCmdRun(&options))) - cmd.AddCommand(cmdOnly(newCmdGet(&options))) - cmd.AddCommand(cmdOnly(newCmdDelete(&options))) - cmd.AddCommand(cmdOnly(newCmdInstall(&options))) - cmd.AddCommand(cmdOnly(newCmdLog(&options))) - cmd.AddCommand(newCmdKit(&options)) - cmd.AddCommand(cmdOnly(newCmdReset(&options))) - cmd.AddCommand(newCmdDescribe(&options)) - cmd.AddCommand(cmdOnly(newCmdRebuild(&options))) + cmd.AddCommand(cmdOnly(newCmdRun(options))) + cmd.AddCommand(cmdOnly(newCmdGet(options))) + cmd.AddCommand(cmdOnly(newCmdDelete(options))) + cmd.AddCommand(cmdOnly(newCmdInstall(options))) + cmd.AddCommand(cmdOnly(newCmdLog(options))) + cmd.AddCommand(newCmdKit(options)) + cmd.AddCommand(cmdOnly(newCmdReset(options))) + cmd.AddCommand(newCmdDescribe(options)) + cmd.AddCommand(cmdOnly(newCmdRebuild(options))) cmd.AddCommand(newCmdOperator()) - cmd.AddCommand(cmdOnly(newCmdBuilder(&options))) - - return &cmd + cmd.AddCommand(cmdOnly(newCmdBuilder(options))) } func (command *RootCmdOptions) preRun(cmd *cobra.Command, _ []string) error { diff --git a/pkg/cmd/root_test.go b/pkg/cmd/root_test.go index 1bf886b..a050a5f 100644 --- a/pkg/cmd/root_test.go +++ b/pkg/cmd/root_test.go @@ -28,20 +28,22 @@ import ( "github.com/spf13/viper" ) -func kamelTestPostAddCommandInit(rootCmd *cobra.Command) *cobra.Command { - rootCmd, _ = kamelPostAddCommandInit(*rootCmd) - return rootCmd +func kamelTestPostAddCommandInit(t *testing.T, rootCmd *cobra.Command) { + err := kamelPostAddCommandInit(rootCmd) + if err != nil { + t.Fatalf("Unexpected error: %v", err) + } } -func kamelTestPreAddCommandInit() (RootCmdOptions, *cobra.Command) { +func kamelTestPreAddCommandInit() (*RootCmdOptions, *cobra.Command) { fakeClient, _ := test.NewFakeClient() options := RootCmdOptions{ Context: context.Background(), _client: fakeClient, } - rootCmd := kamelPreAddCommandInit(options) + rootCmd := kamelPreAddCommandInit(&options) rootCmd.Run = test.EmptyRun - return options, rootCmd + return &options, rootCmd } func TestLoadFromCommandLine(t *testing.T) { @@ -49,7 +51,7 @@ func TestLoadFromCommandLine(t *testing.T) { runCmdOptions := addTestRunCmd(options, rootCmd) - rootCmd = kamelTestPostAddCommandInit(rootCmd) + kamelTestPostAddCommandInit(t, rootCmd) const VAR2 = "VAR2=value2" _, err := test.ExecuteCommand(rootCmd, "run", "route.java", "--env", "VAR1=value,othervalue", "--env", VAR2) @@ -73,7 +75,7 @@ func TestLoadFromEnvVar(t *testing.T) { runCmdOptions := addTestRunCmd(options, rootCmd) - rootCmd = kamelTestPostAddCommandInit(rootCmd) + kamelTestPostAddCommandInit(t, rootCmd) _, err := test.ExecuteCommand(rootCmd, "run", "route.java") if err != nil { @@ -97,7 +99,7 @@ func TestLoadFromFile(t *testing.T) { runCmdOptions := addTestRunCmd(options, rootCmd) - rootCmd = kamelTestPostAddCommandInit(rootCmd) + kamelTestPostAddCommandInit(t, rootCmd) _, err := test.ExecuteCommand(rootCmd, "run", "route.java") if err != nil { @@ -121,7 +123,7 @@ func TestPrecedenceEnvVarOverFile(t *testing.T) { runCmdOptions := addTestRunCmd(options, rootCmd) - rootCmd = kamelTestPostAddCommandInit(rootCmd) + kamelTestPostAddCommandInit(t, rootCmd) _, err := test.ExecuteCommand(rootCmd, "run", "route.java") if err != nil { @@ -145,7 +147,7 @@ func TestPrecedenceCommandLineOverEverythingElse(t *testing.T) { runCmdOptions := addTestRunCmd(options, rootCmd) - rootCmd = kamelTestPostAddCommandInit(rootCmd) + kamelTestPostAddCommandInit(t, rootCmd) _, err := test.ExecuteCommand(rootCmd, "run", "route.java", "--env", "VAR3=commandLine") if err != nil { diff --git a/pkg/cmd/run_test.go b/pkg/cmd/run_test.go index f33fbee..1fcc673 100644 --- a/pkg/cmd/run_test.go +++ b/pkg/cmd/run_test.go @@ -24,9 +24,9 @@ import ( "github.com/spf13/cobra" ) -func addTestRunCmd(options RootCmdOptions, rootCmd *cobra.Command) *runCmdOptions { +func addTestRunCmd(options *RootCmdOptions, rootCmd *cobra.Command) *runCmdOptions { //add a testing version of run Command - runCmd, runCmdOptions := newCmdRun(&options) + runCmd, runCmdOptions := newCmdRun(options) runCmd.RunE = func(c *cobra.Command, args []string) error { return nil } @@ -40,7 +40,7 @@ func TestRunPropertyFlag(t *testing.T) { runCmdOptions := addTestRunCmd(options, rootCmd) - rootCmd = kamelTestPostAddCommandInit(rootCmd) + kamelTestPostAddCommandInit(t, rootCmd) _, err := test.ExecuteCommand(rootCmd, "run", "route.java", "--property", "key1=value,othervalue", "--property", "key2=value2") if err != nil {
