Skip to content

Commit d04dbed

Browse files
chore: Updates user agent to include if PreviewProviderV2AdvancedCluster env var is enabled (#3275)
* include previewProviderV2Cluster info in user agent * comments * min * min * PR comments --------- Co-authored-by: svc-apix-bot <[email protected]>
1 parent 2eea7bf commit d04dbed

File tree

2 files changed

+27
-20
lines changed

2 files changed

+27
-20
lines changed

internal/config/client.go

+21-15
Original file line numberDiff line numberDiff line change
@@ -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

2829
const (
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
4547
type 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

5457
type 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

239242
func 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

internal/provider/provider.go

+6-5
Original file line numberDiff line numberDiff line change
@@ -238,11 +238,12 @@ func (p *MongodbtlasProvider) Configure(ctx context.Context, req provider.Config
238238
}
239239

240240
cfg := config.Config{
241-
PublicKey: data.PublicKey.ValueString(),
242-
PrivateKey: data.PrivateKey.ValueString(),
243-
BaseURL: data.BaseURL.ValueString(),
244-
RealmBaseURL: data.RealmBaseURL.ValueString(),
245-
TerraformVersion: req.TerraformVersion,
241+
PublicKey: data.PublicKey.ValueString(),
242+
PrivateKey: data.PrivateKey.ValueString(),
243+
BaseURL: data.BaseURL.ValueString(),
244+
RealmBaseURL: data.RealmBaseURL.ValueString(),
245+
TerraformVersion: req.TerraformVersion,
246+
PreviewV2AdvancedClusterEnabled: config.PreviewProviderV2AdvancedCluster(),
246247
}
247248

248249
var assumeRoles []tfAssumeRoleModel

0 commit comments

Comments
 (0)