...

Source file src/edge-infra.dev/pkg/edge/edgecli/constructors/constructors.go

Documentation: edge-infra.dev/pkg/edge/edgecli/constructors

     1  package constructors
     2  
     3  import (
     4  	"fmt"
     5  
     6  	edgeClient "edge-infra.dev/pkg/edge/api/client"
     7  	"edge-infra.dev/pkg/edge/edgeadmin/registrar"
     8  	"edge-infra.dev/pkg/edge/edgecli/flagutil"
     9  	"edge-infra.dev/pkg/edge/registration"
    10  	"edge-infra.dev/pkg/lib/cli/rags"
    11  	"edge-infra.dev/pkg/lib/runtime/version"
    12  )
    13  
    14  func BuildRegistrar(rs *rags.RagSet) (*registrar.Registrar, error) {
    15  	endpoint := flagutil.GetStringFlag(rs, flagutil.Endpoint)
    16  	if endpoint == "" && flagutil.GetStringFlag(rs, "bff-endpoint") != "" {
    17  		fmt.Println("WARNING: bff-endpoint flag is being deprecated in Edge Version 0.22, please consider switching over to api-endpoint")
    18  		endpoint = flagutil.GetStringFlag(rs, "bff-endpoint")
    19  	}
    20  	opts := []edgeClient.Option{
    21  		edgeClient.WithBaseURL(endpoint),
    22  	}
    23  	token := flagutil.GetStringFlag(rs, flagutil.BearerTokenFlag)
    24  	if token != "" {
    25  		opts = append(opts, edgeClient.WithBearerToken(token))
    26  	} else {
    27  		opts = append(opts, edgeClient.WithCredentials(flagutil.GetStringFlag(rs, flagutil.UsernameFlag), flagutil.GetStringFlag(rs, flagutil.PasswordFlag), flagutil.GetStringFlag(rs, flagutil.OrganizationFlag)))
    28  	}
    29  	client, err := edgeClient.New(opts...)
    30  	if err != nil {
    31  		return nil, err
    32  	}
    33  	reg := &registrar.Registrar{Client: client}
    34  	return reg, err
    35  }
    36  
    37  func BuildRegistration(rs *rags.RagSet) (*registration.Registration, error) {
    38  	endpoint := flagutil.GetStringFlag(rs, flagutil.Endpoint)
    39  	if endpoint == "" && flagutil.GetStringFlag(rs, "bff-endpoint") != "" {
    40  		fmt.Println("WARNING: bff-endpoint flag is being deprecated in Edge Version 0.22, please consider switching over to api-endpoint")
    41  		endpoint = flagutil.GetStringFlag(rs, "bff-endpoint")
    42  	}
    43  	b := registration.NewBuilder().
    44  		// cluster info
    45  		Banner(flagutil.GetStringFlag(rs, flagutil.BannerFlag)).
    46  		Store(flagutil.GetStringFlag(rs, flagutil.StoreFlag)).
    47  		ClusterType(flagutil.GetStringFlag(rs, flagutil.ClusterTypeFlag)).
    48  		// bff info
    49  		BSLOrganization(flagutil.GetStringFlag(rs, flagutil.OrganizationFlag)).
    50  		APIEndpoint(endpoint).
    51  		BearerToken(flagutil.GetStringFlag(rs, flagutil.BearerTokenFlag)).
    52  		BSLUserPassword(flagutil.GetStringFlag(rs, flagutil.UsernameFlag), flagutil.GetStringFlag(rs, flagutil.PasswordFlag)).
    53  		CreateBSLSite(flagutil.GetBoolFlag(rs, flagutil.CreateBSLSite)).
    54  		BSLSiteEuid(flagutil.GetStringFlag(rs, flagutil.BslSiteEuid)).
    55  		BSLSiteLatitude(flagutil.GetFloat64Flag(rs, flagutil.BslSiteLatitude)).
    56  		BSLSiteLongitude(flagutil.GetFloat64Flag(rs, flagutil.BslSiteLongitude)).
    57  		BSLSiteReferenceID(flagutil.GetStringFlag(rs, flagutil.BslSiteRefernceID)).
    58  		Fleet(flagutil.GetStringFlag(rs, flagutil.FleetFlag)).
    59  		FleetVersion(flagutil.GetStringFlag(rs, flagutil.FleetVersion)).
    60  		//CLI Version
    61  		EdgeVersion(version.New().SemVer)
    62  	return b.Build()
    63  }
    64  
    65  func BuildBootstrap(rs *rags.RagSet, clusterEdgeID, clusterCaHash string) (*registration.Registration, error) {
    66  	endpoint := flagutil.GetStringFlag(rs, flagutil.Endpoint)
    67  	if endpoint == "" && flagutil.GetStringFlag(rs, "bff-endpoint") != "" {
    68  		fmt.Println("WARNING: bff-endpoint flag is being deprecated in Edge Version 0.22, please consider switching over to api-endpoint")
    69  		endpoint = flagutil.GetStringFlag(rs, "bff-endpoint")
    70  	}
    71  	b := registration.NewBuilder().
    72  		// cluster info
    73  		ClusterEdgeID(clusterEdgeID).
    74  		ForceBootstrap(flagutil.GetBoolFlag(rs, flagutil.Force)).
    75  		ClusterCaHash(clusterCaHash).
    76  		// bff info
    77  		APIEndpoint(endpoint).
    78  		BSLUserPassword(flagutil.GetStringFlag(rs, flagutil.UsernameFlag), flagutil.GetStringFlag(rs, flagutil.PasswordFlag)).
    79  		BSLOrganization(flagutil.GetStringFlag(rs, flagutil.OrganizationFlag)).
    80  		BearerToken(flagutil.GetStringFlag(rs, flagutil.BearerTokenFlag)).
    81  
    82  		//CLI Version
    83  		EdgeVersion(version.New().SemVer)
    84  	return b.BootstrapBuild()
    85  }
    86  

View as plain text