...

Source file src/edge-infra.dev/pkg/edge/edgecli/commands/context/list/listcontexts.go

Documentation: edge-infra.dev/pkg/edge/edgecli/commands/context/list

     1  package list
     2  
     3  import (
     4  	"context"
     5  	"fmt"
     6  
     7  	"edge-infra.dev/pkg/edge/edgecli"
     8  	"edge-infra.dev/pkg/lib/cli/command"
     9  	"edge-infra.dev/pkg/lib/cli/rags"
    10  )
    11  
    12  func NewCmd(cfg *edgecli.Config) *command.Command {
    13  	var verbose bool
    14  
    15  	cmd := &command.Command{
    16  		ShortUsage: "edge list-contexts",
    17  		ShortHelp:  "Display the current contexts and all saved contexts",
    18  		Commands: []*command.Command{
    19  			listbanner(cfg),
    20  			listcluster(cfg),
    21  		},
    22  		Flags: []*rags.Rag{
    23  			{
    24  				Name:  "verbose",
    25  				Short: "v",
    26  				Usage: "Verbose output",
    27  				Value: &rags.Bool{Var: &verbose},
    28  			},
    29  		},
    30  		Exec: func(_ context.Context, _ []string) error {
    31  			// prints current and all stored contexts
    32  			// verbose flag causes all fields of contexts to be displayed
    33  			fmt.Println(cfg.CurrentString())
    34  			fmt.Println(cfg.BannerContextsString(verbose))
    35  			fmt.Println(cfg.ClusterContextsString(verbose))
    36  			return nil
    37  		},
    38  	}
    39  
    40  	return cmd
    41  }
    42  

View as plain text