// NewCmdCleanUp delete all fabric8 apps, environments and configurations func NewCmdCleanUp(f *cmdutil.Factory) *cobra.Command { cmd := &cobra.Command{ Use: "cleanup", Short: "Hard delete all fabric8 apps, environments and configurations", Long: `Hard delete all fabric8 apps, environments and configurations`, Run: func(cmd *cobra.Command, args []string) { currentContext, err := util.GetCurrentContext() if err != nil { util.Fatalf("%s", err) } fmt.Fprintf(os.Stdout, `WARNING this is destructive and will remove ALL fabric8 apps, environments and configuration from cluster %s. Continue? [y/N] `, currentContext) var confirm string fmt.Scanln(&confirm) if confirm == "y" { util.Info("Removing...\n") cleanUp(f) return } util.Info("Cancelled") }, } return cmd }
// NewCmdStop stops the current local cluster func NewCmdStop(f *cmdutil.Factory) *cobra.Command { cmd := &cobra.Command{ Use: "stop", Short: "Stops a running local cluster", Long: `Stops a running local cluster`, Run: func(cmd *cobra.Command, args []string) { context, err := util.GetCurrentContext() if err != nil { util.Fatalf("Error getting current context %s", err) } var command string var cargs []string if context == util.Minikube { command = "minikube" cargs = []string{"stop"} } else if util.IsMiniShift(context) { command = "minishift" cargs = []string{"stop"} } else if context == util.CDK { command = "vagrant" cargs = []string{"halt"} } if command == "" { util.Fatalf("Context %s not supported. Currently only CDK, Minishift and Minikube are supported by this command\n", context) } e := exec.Command(command, cargs...) e.Stdout = os.Stdout e.Stderr = os.Stderr err = e.Run() if err != nil { util.Fatalf("Unable to stop the cluster %s", err) } }, } return cmd }