package create import ( "fmt" "github.com/spf13/cobra" "k8s.io/cli-runtime/pkg/genericclioptions" render "example.com/monok8s/pkg/render" ) func NewCmdCreate(flags *genericclioptions.ConfigFlags) *cobra.Command { cmd := &cobra.Command{Use: "create", Short: "Create starter resources"} cmd.AddCommand( &cobra.Command{ Use: "config", Short: "Print a MonoKSConfig template", RunE: func(cmd *cobra.Command, _ []string) error { out, err := render.RenderMonoKSConfig() if err != nil { return err } _, err = fmt.Fprint(cmd.OutOrStdout(), out) return err }, }, &cobra.Command{ Use: "osupgrade", Short: "Print an OSUpgrade template", RunE: func(cmd *cobra.Command, _ []string) error { ns, _, err := flags.ToRawKubeConfigLoader().Namespace() if err != nil { return err } out, err := render.RenderOSUpgrade(ns) if err != nil { return err } _, err = fmt.Fprint(cmd.OutOrStdout(), out) return err }, }, &cobra.Command{ Use: "controller", Short: "Print controller deployment template", RunE: func(cmd *cobra.Command, _ []string) error { ns, _, err := flags.ToRawKubeConfigLoader().Namespace() if err != nil { return err } out, err := render.RenderControllerDeployments(ns) if err != nil { return err } _, err = fmt.Fprint(cmd.OutOrStdout(), out) return err }, }, ) return cmd }