func SayHello()

in server/cmd/client/start.go [113:247]


func SayHello(client pb.MyGreeterClient, name string, age int32, email string, address string, logger *log.Logger) {
	ctx := context.Background()

	addressParts := strings.Split(address, ",")
	street := addressParts[0]
	city := addressParts[1]
	stateAndZip := strings.Split(addressParts[2], " ")
	state := stateAndZip[1]
	parseZipcode, _ := strconv.ParseInt(stateAndZip[2], 10, 32)
	zipcode := int32(parseZipcode)

	addr := &pb.Address{
		Street:  street,
		City:    city,
		State:   state,
		Zipcode: zipcode,
	}
	r, err := client.SayHello(ctx, &pb.HelloRequest{Name: name, Age: age, Email: email, Address: addr})
	if err != nil {
		log.Info("SayHello error: " + err.Error())
	} else {
		log.Info("Response message: " + r.GetMessage())
	}

	tags := map[string]string{
		"tag1": "value1",
		"tag2": "value2",
	}

	// Create a new Configuration instance
	cfg := &restsdk.Configuration{
		BasePath:      options.HttpAddr,
		DefaultHeader: make(map[string]string),
		UserAgent:     "Swagger-Codegen/1.0.0/go",
		HTTPClient:    restlogger.NewLoggingClient(logger),
	}

	apiClient := restsdk.NewAPIClient(cfg)

	service := apiClient.MyGreeterApi

	// Only update resource groups and perform storage account CRUDL ops
	// in int and stg environments due to current MSI role
	if !options.CallAllRGOps {
		_, err = client.UpdateResourceGroup(ctx, &pb.UpdateResourceGroupRequest{Name: options.RgName, Tags: tags})
		if err != nil {
			log.Error("Error calling UpdateResourceGroup: " + err.Error())
		}
		_, _, err = service.MyGreeterUpdateResourceGroup(context.Background(), tags, options.RgName)
		if err != nil {
			log.Error("Error calling MyGreeterUpdateResourceGroup: " + err.Error())
		}
		resp, createSAErr := client.CreateStorageAccount(ctx, &pb.CreateStorageAccountRequest{RgName: options.RgName, Region: options.RgRegion})
		if createSAErr != nil {
			log.Error("Error calling CreateStorageAccount: " + err.Error())
		}
		storageAccountName := resp.Name
		_, err = client.ReadStorageAccount(ctx, &pb.ReadStorageAccountRequest{RgName: options.RgName, SaName: storageAccountName})
		if err != nil {
			log.Error("Error calling ReadStorageAccount: " + err.Error())
		}
		_, err = client.UpdateStorageAccount(ctx, &pb.UpdateStorageAccountRequest{RgName: options.RgName, SaName: storageAccountName, Tags: tags})
		if err != nil {
			log.Error("Error calling UpdateStorageAccount: " + err.Error())
		}
		_, err = client.ListStorageAccounts(ctx, &pb.ListStorageAccountRequest{RgName: options.RgName})
		if err != nil {
			log.Error("Error calling ListStorageAccounts: " + err.Error())
		}
		_, err = client.DeleteStorageAccount(ctx, &pb.DeleteStorageAccountRequest{RgName: options.RgName, SaName: storageAccountName})
		if err != nil {
			log.Error("Error calling DeleteStorageAccount: " + err.Error())
		}

	} else {
		_, err = client.CreateResourceGroup(ctx, &pb.CreateResourceGroupRequest{Name: options.RgName, Region: options.RgRegion})
		if err != nil {
			log.Error("Error calling CreateResourceGroup: " + err.Error())
		}
		_, err = client.ReadResourceGroup(ctx, &pb.ReadResourceGroupRequest{Name: options.RgName})
		if err != nil {
			log.Error("Error calling ReadResourceGroup: " + err.Error())
		}
		_, err = client.UpdateResourceGroup(ctx, &pb.UpdateResourceGroupRequest{Name: options.RgName, Tags: tags})
		if err != nil {
			log.Error("Error calling UpdateResourceGroup: " + err.Error())
		}
		_, err = client.ListResourceGroups(ctx, &emptypb.Empty{})
		if err != nil {
			log.Error("Error calling ListResourceGroup: " + err.Error())
		}
		_, err = client.DeleteResourceGroup(ctx, &pb.DeleteResourceGroupRequest{Name: options.RgName})
		if err != nil {
			log.Error("Error calling DeleteResourceGroup: " + err.Error())
		}

		createRequestBody := restsdk.CreateResourceGroupRequest{
			Name:   options.RgName,
			Region: options.RgRegion,
		}
		_, _, err = service.MyGreeterCreateResourceGroup(context.Background(), createRequestBody)
		if err != nil {
			log.Error("Error calling MyGreeterCreateResourceGroup: " + err.Error())
		}
		_, _, err = service.MyGreeterReadResourceGroup(context.Background(), options.RgName)
		if err != nil {
			log.Error("Error calling MyGreeterReadResourceGroup: " + err.Error())
		}
		_, _, err = service.MyGreeterUpdateResourceGroup(context.Background(), tags, options.RgName)
		if err != nil {
			log.Error("Error calling MyGreeterUpdateResourceGroup: " + err.Error())
		}
		_, _, err = service.MyGreeterListResourceGroups(context.Background())
		if err != nil {
			log.Error("Error calling MyGreeterListResourceGroups: " + err.Error())
		}
		_, _, err = service.MyGreeterDeleteResourceGroup(context.Background(), options.RgName)
		if err != nil {
			log.Error("Error calling MyGreeterDeleteResourceGroup: " + err.Error())
		}
	}

	protoExpirationTime := timestamppb.New(time.Now().Add(1 * time.Hour))
	startOperationRequest := &pb.StartLongRunningOperationRequest{
		EntityId:            "20",
		EntityType:          "Cluster",
		ExpirationTimestamp: protoExpirationTime,
	}
	startOperationResponse, err := client.StartLongRunningOperation(ctx, startOperationRequest)
	if err != nil {
		log.Error("Error calling StartOperation: " + err.Error())
	} else {
		log.Info("Started operation with operationId: " + startOperationResponse.GetOperationId())
	}
}