github.com/esnet/gdg@v0.6.1-0.20240412190737-6b6eba9c14d8/cli/backup/backup.go (about)

     1  package backup
     2  
     3  import (
     4  	"context"
     5  	"github.com/bep/simplecobra"
     6  	"github.com/esnet/gdg/cli/support"
     7  	"github.com/esnet/gdg/internal/config"
     8  	"github.com/spf13/cobra"
     9  )
    10  
    11  func NewBackupCommand() simplecobra.Commander {
    12  	description := "Manage entities that are backup up and updated via api"
    13  	return &support.SimpleCommand{
    14  		NameP: "backup",
    15  		Short: description,
    16  		Long: `Manage entities that are backup up and updated via api.  These utilities are mostly
    17  limited to clear/delete, list, download and upload.  Any other functionality will be found under the tools.`,
    18  		WithCFunc: func(cmd *cobra.Command, r *support.RootCommand) {
    19  			cmd.Aliases = []string{"b"}
    20  		},
    21  		RunFunc: func(ctx context.Context, cd *simplecobra.Commandeer, rootCmd *support.RootCommand, args []string) error {
    22  			return cd.CobraCommand.Help()
    23  		},
    24  		InitCFunc: func(cd *simplecobra.Commandeer, r *support.RootCommand) error {
    25  			support.InitConfiguration(cd.CobraCommand)
    26  			r.GrafanaSvc().InitOrganizations()
    27  			return nil
    28  		},
    29  		CommandsList: []simplecobra.Commander{
    30  			newDashboardCommand(),
    31  			newConnectionsCommand(),
    32  			newFolderCommand(),
    33  			newLibraryElementsCommand(),
    34  			newOrganizationsCommand(),
    35  			newTeamsCommand(),
    36  			newUsersCommand(),
    37  		},
    38  	}
    39  
    40  }
    41  
    42  // GetOrganizationName wrapper for verbose version below.
    43  func GetOrganizationName() string {
    44  	return config.Config().GetDefaultGrafanaConfig().GetOrganizationName()
    45  }
    46  
    47  // GetContext wrapper for verbose version below.
    48  func GetContext() string {
    49  	return config.Config().GetGDGConfig().GetContext()
    50  }