...

Source file src/edge-infra.dev/pkg/edge/edgecli/commands/context/update/updatebanner.go

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

     1  package update
     2  
     3  import (
     4  	"context"
     5  	"fmt"
     6  
     7  	"edge-infra.dev/pkg/edge/edgecli/flagutil"
     8  
     9  	"edge-infra.dev/pkg/edge/edgecli"
    10  	"edge-infra.dev/pkg/lib/cli/command"
    11  	"edge-infra.dev/pkg/lib/cli/rags"
    12  )
    13  
    14  func updateBanner(cfg *edgecli.Config) *command.Command {
    15  	var (
    16  		// banner fields
    17  		name         string
    18  		bannerEdgeID string
    19  		bannerName   string
    20  		username     string
    21  		tenantOrg    string
    22  		endpoint     string
    23  		token        string
    24  	)
    25  
    26  	cmd := &command.Command{
    27  		ShortUsage: "edge update-context banner",
    28  		ShortHelp:  "Add new banner context to config file",
    29  		Flags: []*rags.Rag{
    30  			// banner field flags
    31  			{
    32  				Name:  "name",
    33  				Usage: "Name of banner context",
    34  				Value: &rags.String{Var: &name},
    35  			},
    36  			{
    37  				Name:  "bannerEdgeID",
    38  				Usage: "Banner Edge ID",
    39  				Value: &rags.String{Var: &bannerEdgeID},
    40  			},
    41  			{
    42  				Name:  flagutil.BannerFlag,
    43  				Usage: "Name of the banner",
    44  				Value: &rags.String{Var: &bannerName},
    45  			},
    46  			{
    47  				Name:  flagutil.UsernameFlag,
    48  				Usage: "Username",
    49  				Value: &rags.String{Var: &username},
    50  			},
    51  			{
    52  				Name:  flagutil.OrganizationFlag,
    53  				Usage: "Tenant Organization",
    54  				Value: &rags.String{Var: &tenantOrg},
    55  			},
    56  			{
    57  				Name:  flagutil.Endpoint,
    58  				Usage: "BFF Endpoint",
    59  				Value: &rags.String{Var: &endpoint},
    60  			},
    61  			{
    62  				Name:  flagutil.BearerTokenFlag,
    63  				Usage: "Token",
    64  				Value: &rags.String{Var: &token},
    65  			},
    66  		},
    67  		Exec: func(_ context.Context, _ []string) error {
    68  			if name == "" {
    69  				name = cfg.CurrentBannerContext
    70  			}
    71  
    72  			if err := cfg.UpdateBanner(name, bannerEdgeID, bannerName, username, tenantOrg, endpoint, token); err != nil {
    73  				return err
    74  			}
    75  
    76  			fmt.Println("Banner Context '" + name + "' has been updated")
    77  			return nil
    78  		},
    79  	}
    80  
    81  	return cmd
    82  }
    83  

View as plain text