9
9
"strings"
10
10
"time"
11
11
12
+ adminpreview "github.com/mongodb/atlas-sdk-go/admin"
12
13
admin20240530 "go.mongodb.org/atlas-sdk/v20240530005/admin"
13
14
"go.mongodb.org/atlas-sdk/v20240805005/admin"
14
15
matlasClient "go.mongodb.org/atlas/mongodbatlas"
@@ -32,6 +33,7 @@ type MongoDBClient struct {
32
33
Atlas * matlasClient.Client
33
34
AtlasV2 * admin.APIClient
34
35
AtlasV220240530 * admin20240530.APIClient // used in advanced_cluster and cloud_backup_schedule for avoiding breaking changes
36
+ AtlasPreview * adminpreview.APIClient // used for preview features, don't use in resources exposed in the provider list
35
37
Config * Config
36
38
}
37
39
@@ -110,13 +112,18 @@ func (c *Config) NewClient(ctx context.Context) (any, error) {
110
112
return nil , err
111
113
}
112
114
115
+ sdkPreviewClient , err := c .newSDKPreviewClient (client )
116
+ if err != nil {
117
+ return nil , err
118
+ }
119
+
113
120
clients := & MongoDBClient {
114
121
Atlas : atlasClient ,
115
122
AtlasV2 : sdkV2Client ,
116
123
AtlasV220240530 : sdkV220240530Client ,
124
+ AtlasPreview : sdkPreviewClient ,
117
125
Config : c ,
118
126
}
119
-
120
127
return clients , nil
121
128
}
122
129
@@ -127,13 +134,11 @@ func (c *Config) newSDKV2Client(client *http.Client) (*admin.APIClient, error) {
127
134
admin .UseBaseURL (c .BaseURL ),
128
135
admin .UseDebug (false )}
129
136
130
- // Initialize the MongoDB Versioned Atlas Client.
131
- sdkv2 , err := admin .NewClient (opts ... )
137
+ sdk , err := admin .NewClient (opts ... )
132
138
if err != nil {
133
139
return nil , err
134
140
}
135
-
136
- return sdkv2 , nil
141
+ return sdk , nil
137
142
}
138
143
139
144
func (c * Config ) newSDKV220240530Client (client * http.Client ) (* admin20240530.APIClient , error ) {
@@ -143,13 +148,25 @@ func (c *Config) newSDKV220240530Client(client *http.Client) (*admin20240530.API
143
148
admin20240530 .UseBaseURL (c .BaseURL ),
144
149
admin20240530 .UseDebug (false )}
145
150
146
- // Initialize the MongoDB Versioned Atlas Client.
147
- sdkv2 , err := admin20240530 .NewClient (opts ... )
151
+ sdk , err := admin20240530 .NewClient (opts ... )
148
152
if err != nil {
149
153
return nil , err
150
154
}
155
+ return sdk , nil
156
+ }
157
+
158
+ func (c * Config ) newSDKPreviewClient (client * http.Client ) (* adminpreview.APIClient , error ) {
159
+ opts := []adminpreview.ClientModifier {
160
+ adminpreview .UseHTTPClient (client ),
161
+ adminpreview .UseUserAgent (userAgent (c )),
162
+ adminpreview .UseBaseURL (c .BaseURL ),
163
+ adminpreview .UseDebug (false )}
151
164
152
- return sdkv2 , nil
165
+ sdk , err := adminpreview .NewClient (opts ... )
166
+ if err != nil {
167
+ return nil , err
168
+ }
169
+ return sdk , nil
153
170
}
154
171
155
172
func (c * MongoDBClient ) GetRealmClient (ctx context.Context ) (* realm.Client , error ) {
0 commit comments