diff --git a/cmd/installer/cli/install.go b/cmd/installer/cli/install.go index 2ffb735f6..0b553110d 100644 --- a/cmd/installer/cli/install.go +++ b/cmd/installer/cli/install.go @@ -106,6 +106,9 @@ func InstallCmd(ctx context.Context, name string) *cobra.Command { cancel() // Cancel context when command completes }, RunE: func(cmd *cobra.Command, args []string) error { + if err := verifyAndPrompt(ctx, name, flags, prompts.New()); err != nil { + return err + } if err := preRunInstall(cmd, &flags, rc); err != nil { return err } @@ -122,7 +125,7 @@ func InstallCmd(ctx context.Context, name string) *cobra.Command { installReporter.ReportSignalAborted(ctx, sig) }) - if err := runInstall(cmd.Context(), name, flags, rc, installReporter); err != nil { + if err := runInstall(cmd.Context(), flags, rc, installReporter); err != nil { // Check if this is an interrupt error from the terminal if errors.Is(err, terminal.InterruptErr) { installReporter.ReportSignalAborted(ctx, syscall.SIGINT) @@ -385,6 +388,11 @@ func preRunInstall(cmd *cobra.Command, flags *InstallCmdFlags, rc runtimeconfig. } flags.proxy = proxy + if err := verifyProxyConfig(flags.proxy, prompts.New(), flags.assumeYes); err != nil { + return err + } + logrus.Debug("User confirmed prompt to proceed installing with `http_proxy` set and `https_proxy` unset") + if err := validateCIDRFlags(cmd); err != nil { return err } @@ -440,7 +448,7 @@ func preRunInstall(cmd *cobra.Command, flags *InstallCmdFlags, rc runtimeconfig. return nil } -func runInstall(ctx context.Context, name string, flags InstallCmdFlags, rc runtimeconfig.RuntimeConfig, installReporter *InstallReporter) (finalErr error) { +func runInstall(ctx context.Context, flags InstallCmdFlags, rc runtimeconfig.RuntimeConfig, installReporter *InstallReporter) (finalErr error) { defer func() { if flags.enableManagerExperience && finalErr != nil { if err := markUIInstallComplete(flags.adminConsolePassword, flags.managerPort, finalErr); err != nil { @@ -449,10 +457,6 @@ func runInstall(ctx context.Context, name string, flags InstallCmdFlags, rc runt } }() - if err := runInstallVerifyAndPrompt(ctx, name, flags, prompts.New()); err != nil { - return err - } - if !flags.enableManagerExperience { logrus.Debug("initializing install") if err := initializeInstall(ctx, flags, rc); err != nil { @@ -607,7 +611,7 @@ func getAddonInstallOpts(flags InstallCmdFlags, rc runtimeconfig.RuntimeConfig) return opts, nil } -func runInstallVerifyAndPrompt(ctx context.Context, name string, flags InstallCmdFlags, prompt prompts.Prompt) error { +func verifyAndPrompt(ctx context.Context, name string, flags InstallCmdFlags, prompt prompts.Prompt) error { logrus.Debugf("checking if k0s is already installed") err := verifyNoInstallation(name, "reinstall") if err != nil { @@ -642,11 +646,6 @@ func runInstallVerifyAndPrompt(ctx context.Context, name string, flags InstallCm } } - if err := verifyProxyConfig(flags.proxy, prompt, flags.assumeYes); err != nil { - return err - } - logrus.Debug("User confirmed prompt to proceed installing with `http_proxy` set and `https_proxy` unset") - if err := release.ValidateECConfig(); err != nil { return err } diff --git a/cmd/installer/cli/install_runpreflights.go b/cmd/installer/cli/install_runpreflights.go index 2fe79f40b..b6096074e 100644 --- a/cmd/installer/cli/install_runpreflights.go +++ b/cmd/installer/cli/install_runpreflights.go @@ -58,7 +58,7 @@ func InstallRunPreflightsCmd(ctx context.Context, name string) *cobra.Command { } func runInstallRunPreflights(ctx context.Context, name string, flags InstallCmdFlags, rc runtimeconfig.RuntimeConfig) error { - if err := runInstallVerifyAndPrompt(ctx, name, flags, prompts.New()); err != nil { + if err := verifyAndPrompt(ctx, name, flags, prompts.New()); err != nil { return err }