@@ -6,10 +6,10 @@ import (
66 "fmt"
77 "net/http"
88 "net/url"
9+ "strconv"
910 "strings"
1011 "time"
1112
12- adminpreview "github.com/mongodb/atlas-sdk-go/admin"
1313 admin20240530 "go.mongodb.org/atlas-sdk/v20240530005/admin"
1414 admin20240805 "go.mongodb.org/atlas-sdk/v20240805005/admin"
1515 admin20241113 "go.mongodb.org/atlas-sdk/v20241113005/admin"
@@ -20,14 +20,16 @@ import (
2020
2121 "github.com/hashicorp/terraform-plugin-sdk/v2/helper/logging"
2222 "github.com/mongodb-forks/digest"
23+ adminpreview "github.com/mongodb/atlas-sdk-go/admin"
2324 "github.com/spf13/cast"
2425
2526 "github.com/mongodb/terraform-provider-mongodbatlas/version"
2627)
2728
2829const (
29- toolName = "terraform-provider-mongodbatlas"
30- terraformPlatformName = "Terraform"
30+ toolName = "terraform-provider-mongodbatlas"
31+ terraformPlatformName = "Terraform"
32+ previewV2AdvancedClusterEnabledUAKey = "AdvancedClusterPreview"
3133)
3234
3335// MongoDBClient contains the mongodbatlas clients and configurations
@@ -43,12 +45,13 @@ type MongoDBClient struct {
4345
4446// Config contains the configurations needed to use SDKs
4547type Config struct {
46- AssumeRole * AssumeRole
47- PublicKey string
48- PrivateKey string
49- BaseURL string
50- RealmBaseURL string
51- TerraformVersion string
48+ AssumeRole * AssumeRole
49+ PublicKey string
50+ PrivateKey string
51+ BaseURL string
52+ RealmBaseURL string
53+ TerraformVersion string
54+ PreviewV2AdvancedClusterEnabled bool
5255}
5356
5457type AssumeRole struct {
@@ -68,9 +71,9 @@ type SecretData struct {
6871 PrivateKey string `json:"private_key"`
6972}
7073
71- type PlatformVersion struct {
72- Name string
73- Version string
74+ type UAMetadata struct {
75+ Name string
76+ Value string
7477}
7578
7679// NewClient func...
@@ -237,14 +240,17 @@ func (c *MongoDBClient) GetRealmClient(ctx context.Context) (*realm.Client, erro
237240}
238241
239242func userAgent (c * Config ) string {
240- platformVersions := []PlatformVersion {
243+ isPreviewV2AdvancedClusterEnabled := c .PreviewV2AdvancedClusterEnabled
244+
245+ metadata := []UAMetadata {
241246 {toolName , version .ProviderVersion },
242247 {terraformPlatformName , c .TerraformVersion },
248+ {previewV2AdvancedClusterEnabledUAKey , strconv .FormatBool (isPreviewV2AdvancedClusterEnabled )},
243249 }
244250
245251 var parts []string
246- for _ , info := range platformVersions {
247- part := fmt .Sprintf ("%s/%s" , info .Name , info .Version )
252+ for _ , info := range metadata {
253+ part := fmt .Sprintf ("%s/%s" , info .Name , info .Value )
248254 parts = append (parts , part )
249255 }
250256
0 commit comments