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

     1  // Copyright (c) 2022, 2024, 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  	"github.com/verrazzano/verrazzano/tools/vz/cmd/export"
    11  	cmdhelpers "github.com/verrazzano/verrazzano/tools/vz/cmd/helpers"
    12  	"github.com/verrazzano/verrazzano/tools/vz/cmd/install"
    13  	"github.com/verrazzano/verrazzano/tools/vz/cmd/sanitize"
    14  	"github.com/verrazzano/verrazzano/tools/vz/cmd/status"
    15  	"github.com/verrazzano/verrazzano/tools/vz/cmd/uninstall"
    16  	"github.com/verrazzano/verrazzano/tools/vz/cmd/upgrade"
    17  	"github.com/verrazzano/verrazzano/tools/vz/cmd/version"
    18  	"github.com/verrazzano/verrazzano/tools/vz/pkg/constants"
    19  	"github.com/verrazzano/verrazzano/tools/vz/pkg/helpers"
    20  )
    21  
    22  var kubeconfigFlagValPointer string
    23  var contextFlagValPointer string
    24  
    25  const (
    26  	CommandName = "vz"
    27  	helpShort   = "The vz tool is a command-line utility that allows Verrazzano operators to query and manage a Verrazzano environment"
    28  	helpLong    = "The vz tool is a command-line utility that allows Verrazzano operators to query and manage a Verrazzano environment"
    29  )
    30  
    31  // NewRootCmd - create the root cobra command
    32  func NewRootCmd(vzHelper helpers.VZHelper) *cobra.Command {
    33  	cmd := cmdhelpers.NewCommand(vzHelper, CommandName, helpShort, helpLong)
    34  
    35  	// Add global flags
    36  	cmd.PersistentFlags().StringVar(&kubeconfigFlagValPointer, constants.GlobalFlagKubeConfig, "", constants.GlobalFlagKubeConfigHelp)
    37  	cmd.PersistentFlags().StringVar(&contextFlagValPointer, constants.GlobalFlagContext, "", constants.GlobalFlagContextHelp)
    38  
    39  	// Add commands
    40  	cmd.AddCommand(status.NewCmdStatus(vzHelper))
    41  	cmd.AddCommand(version.NewCmdVersion(vzHelper))
    42  	cmd.AddCommand(install.NewCmdInstall(vzHelper))
    43  	cmd.AddCommand(upgrade.NewCmdUpgrade(vzHelper))
    44  	cmd.AddCommand(uninstall.NewCmdUninstall(vzHelper))
    45  	cmd.AddCommand(analyze.NewCmdAnalyze(vzHelper))
    46  	cmd.AddCommand(bugreport.NewCmdBugReport(vzHelper))
    47  	cmd.AddCommand(export.NewCmdExport(vzHelper))
    48  	cmd.AddCommand(sanitize.NewCmdSanitize(vzHelper))
    49  
    50  	return cmd
    51  }