github.com/verrazzano/verrazzano@v1.7.0/tools/vz/cmd/root/root.go (about)

     1  // Copyright (c) 2022, 2023, Oracle and/or its affiliates.
     2  // Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
     3  
     4  package root
     5  
     6  import (
     7  	"github.com/spf13/cobra"
     8  	"github.com/verrazzano/verrazzano/tools/vz/cmd/analyze"
     9  	"github.com/verrazzano/verrazzano/tools/vz/cmd/bugreport"
    10  	cmdhelpers "github.com/verrazzano/verrazzano/tools/vz/cmd/helpers"
    11  	"github.com/verrazzano/verrazzano/tools/vz/cmd/install"
    12  	"github.com/verrazzano/verrazzano/tools/vz/cmd/status"
    13  	"github.com/verrazzano/verrazzano/tools/vz/cmd/uninstall"
    14  	"github.com/verrazzano/verrazzano/tools/vz/cmd/upgrade"
    15  	"github.com/verrazzano/verrazzano/tools/vz/cmd/version"
    16  	"github.com/verrazzano/verrazzano/tools/vz/pkg/constants"
    17  	"github.com/verrazzano/verrazzano/tools/vz/pkg/helpers"
    18  )
    19  
    20  var kubeconfigFlagValPointer string
    21  var contextFlagValPointer string
    22  
    23  const (
    24  	CommandName = "vz"
    25  	helpShort   = "The vz tool is a command-line utility that allows Verrazzano operators to query and manage a Verrazzano environment"
    26  	helpLong    = "The vz tool is a command-line utility that allows Verrazzano operators to query and manage a Verrazzano environment"
    27  )
    28  
    29  // NewRootCmd - create the root cobra command
    30  func NewRootCmd(vzHelper helpers.VZHelper) *cobra.Command {
    31  	cmd := cmdhelpers.NewCommand(vzHelper, CommandName, helpShort, helpLong)
    32  
    33  	// Add global flags
    34  	cmd.PersistentFlags().StringVar(&kubeconfigFlagValPointer, constants.GlobalFlagKubeConfig, "", constants.GlobalFlagKubeConfigHelp)
    35  	cmd.PersistentFlags().StringVar(&contextFlagValPointer, constants.GlobalFlagContext, "", constants.GlobalFlagContextHelp)
    36  
    37  	// Add commands
    38  	cmd.AddCommand(status.NewCmdStatus(vzHelper))
    39  	cmd.AddCommand(version.NewCmdVersion(vzHelper))
    40  	cmd.AddCommand(install.NewCmdInstall(vzHelper))
    41  	cmd.AddCommand(upgrade.NewCmdUpgrade(vzHelper))
    42  	cmd.AddCommand(uninstall.NewCmdUninstall(vzHelper))
    43  	cmd.AddCommand(analyze.NewCmdAnalyze(vzHelper))
    44  	cmd.AddCommand(bugreport.NewCmdBugReport(vzHelper))
    45  
    46  	return cmd
    47  }