Skip to content

Commit 0c63156

Browse files
author
Ciprian Tibulca
authored
CLOUDP-231607: update mdb version to 7.0 (#2717)
1 parent 1cf3569 commit 0c63156

11 files changed

+90
-23
lines changed

internal/cli/atlas/clusters/create_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func TestCreateOpts_Run(t *testing.T) {
4646
members: 3,
4747
diskSizeGB: 10,
4848
backup: false,
49-
mdbVersion: "4.4",
49+
mdbVersion: "7.0",
5050
store: mockStore,
5151
}
5252

internal/cli/atlas/clusters/update_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ func TestUpdate_Run(t *testing.T) {
4141
name: "ProjectBar",
4242
tier: atlasM2,
4343
diskSizeGB: 10,
44-
mdbVersion: "4.4",
44+
mdbVersion: "7.0",
4545
store: mockStore,
4646
}
4747

test/e2e/atlas/atlas_e2e_test_generator_test.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,10 @@ func (g *atlasE2ETestGenerator) generateCluster() {
335335
}
336336

337337
if g.mDBVer == "" {
338-
g.mDBVer = e2eMDBVer
338+
mdbVersion, e := MongoDBMajorVersion()
339+
require.NoError(g.t, e)
340+
341+
g.mDBVer = mdbVersion
339342
}
340343

341344
g.clusterName, g.clusterRegion, err = deployClusterForProject(g.projectID, g.tier, g.mDBVer, g.enableBackup)

test/e2e/atlas/backup_export_jobs_test.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@ func TestExportJobs(t *testing.T) {
3838
fmt.Println(clusterName)
3939
r.NoError(err)
4040

41+
mdbVersion, err := MongoDBMajorVersion()
42+
r.NoError(err)
43+
4144
const cloudProvider = "AWS"
4245
iamRoleID := os.Getenv("E2E_CLOUD_ROLE_ID")
4346
bucketName := os.Getenv("E2E_TEST_BUCKET")
@@ -56,15 +59,15 @@ func TestExportJobs(t *testing.T) {
5659
"--tier", tierM10,
5760
"--region=US_EAST_1",
5861
"--provider", e2eClusterProvider,
59-
"--mdbVersion", e2eSharedMDBVer,
62+
"--mdbVersion", mdbVersion,
6063
"-o=json")
6164
cmd.Env = os.Environ()
6265
resp, err := cmd.CombinedOutput()
6366
r.NoError(err, string(resp))
6467

6568
var cluster *atlasv2.AdvancedClusterDescription
6669
r.NoError(json.Unmarshal(resp, &cluster))
67-
ensureCluster(t, cluster, clusterName, e2eSharedMDBVer, 10, false)
70+
ensureCluster(t, cluster, clusterName, mdbVersion, 10, false)
6871
})
6972
t.Cleanup(func() {
7073
require.NoError(t, deleteClusterForProject("", clusterName))

test/e2e/atlas/backup_snapshot_test.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ func TestSnapshots(t *testing.T) {
3535
clusterName, err := RandClusterName()
3636
r.NoError(err)
3737

38+
mdbVersion, err := MongoDBMajorVersion()
39+
r.NoError(err)
40+
3841
var snapshotID string
3942

4043
t.Run("Create cluster", func(t *testing.T) {
@@ -46,15 +49,15 @@ func TestSnapshots(t *testing.T) {
4649
"--tier", tierM10,
4750
"--region=US_EAST_1",
4851
"--provider", e2eClusterProvider,
49-
"--mdbVersion", e2eSharedMDBVer,
52+
"--mdbVersion", mdbVersion,
5053
"-o=json")
5154
cmd.Env = os.Environ()
5255
resp, err := cmd.CombinedOutput()
5356
require.NoError(t, err, string(resp))
5457

5558
var cluster *atlasv2.AdvancedClusterDescription
5659
require.NoError(t, json.Unmarshal(resp, &cluster))
57-
ensureCluster(t, cluster, clusterName, e2eSharedMDBVer, 10, false)
60+
ensureCluster(t, cluster, clusterName, mdbVersion, 10, false)
5861
})
5962
t.Cleanup(func() {
6063
require.NoError(t, deleteClusterForProject("", clusterName))

test/e2e/atlas/clusters_file_test.go

Lines changed: 46 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,13 @@
1616
package atlas_test
1717

1818
import (
19+
"bytes"
1920
"encoding/json"
2021
"fmt"
2122
"os"
2223
"os/exec"
2324
"testing"
25+
"text/template"
2426

2527
"github.com/mongodb/mongodb-atlas-cli/atlascli/internal/config"
2628
"github.com/mongodb/mongodb-atlas-cli/atlascli/test/e2e"
@@ -40,10 +42,15 @@ func TestClustersFile(t *testing.T) {
4042
clusterFileName, err := RandClusterName()
4143
req.NoError(err)
4244

43-
clusterFile := "create_cluster_test.json"
44-
if service := os.Getenv("MCLI_SERVICE"); service == config.CloudGovService {
45-
clusterFile = "create_cluster_gov_test.json"
46-
}
45+
mdbVersion, err := MongoDBMajorVersion()
46+
req.NoError(err)
47+
48+
clusterFile, err := generateClusterFile(mdbVersion)
49+
req.NoError(err)
50+
51+
t.Cleanup(func() {
52+
os.Remove(clusterFile)
53+
})
4754

4855
t.Run("Create via file", func(t *testing.T) {
4956
cmd := exec.Command(cliPath,
@@ -60,7 +67,7 @@ func TestClustersFile(t *testing.T) {
6067
var cluster atlasv2.AdvancedClusterDescription
6168
req.NoError(json.Unmarshal(resp, &cluster))
6269

63-
ensureCluster(t, &cluster, clusterFileName, e2eMDBVer, 30, false)
70+
ensureCluster(t, &cluster, clusterFileName, mdbVersion, 30, false)
6471
})
6572

6673
t.Run("Watch", func(t *testing.T) {
@@ -92,7 +99,7 @@ func TestClustersFile(t *testing.T) {
9299
var cluster atlasv2.AdvancedClusterDescription
93100
req.NoError(json.Unmarshal(resp, &cluster))
94101
t.Logf("%v\n", cluster)
95-
ensureCluster(t, &cluster, clusterFileName, e2eMDBVer, 40, false)
102+
ensureCluster(t, &cluster, clusterFileName, mdbVersion, 40, false)
96103
assert.Empty(t, cluster.GetTags())
97104
})
98105

@@ -126,3 +133,36 @@ func TestClustersFile(t *testing.T) {
126133
t.Log(string(resp))
127134
})
128135
}
136+
137+
func generateClusterFile(mdbVersion string) (string, error) {
138+
data := struct {
139+
MongoDBMajorVersion string
140+
}{
141+
MongoDBMajorVersion: mdbVersion,
142+
}
143+
144+
templateFile := "create_cluster_test.json"
145+
if service := os.Getenv("MCLI_SERVICE"); service == config.CloudGovService {
146+
templateFile = "create_cluster_gov_test.json"
147+
}
148+
149+
tmpl, err := template.ParseFiles(templateFile)
150+
if err != nil {
151+
return "", err
152+
}
153+
154+
var tempBuffer bytes.Buffer
155+
if err = tmpl.Execute(&tempBuffer, data); err != nil {
156+
return "", err
157+
}
158+
159+
const clusterFile = "create_cluster.json"
160+
file, err := os.Create(clusterFile)
161+
if err != nil {
162+
return "", err
163+
}
164+
defer file.Close()
165+
166+
_, err = tempBuffer.WriteTo(file)
167+
return clusterFile, err
168+
}

test/e2e/atlas/clusters_flags_test.go

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,12 @@ package atlas_test
1717

1818
import (
1919
"encoding/json"
20+
"fmt"
2021
"os"
2122
"os/exec"
2223
"testing"
2324

25+
"github.com/Masterminds/semver/v3"
2426
"github.com/mongodb/mongodb-atlas-cli/atlascli/test/e2e"
2527
"github.com/stretchr/testify/assert"
2628
"github.com/stretchr/testify/require"
@@ -44,6 +46,12 @@ func TestClustersFlags(t *testing.T) {
4446
region, err := g.newAvailableRegion(tier, e2eClusterProvider)
4547
req.NoError(err)
4648

49+
mdbVersion, err := MongoDBMajorVersion()
50+
req.NoError(err)
51+
52+
previousMdbVersion, err := getPreviousMajorVersion(mdbVersion)
53+
req.NoError(err)
54+
4755
t.Run("Create", func(t *testing.T) {
4856
cmd := exec.Command(cliPath,
4957
clustersEntity,
@@ -53,7 +61,7 @@ func TestClustersFlags(t *testing.T) {
5361
"--members=3",
5462
"--tier", tier,
5563
"--provider", e2eClusterProvider,
56-
"--mdbVersion", e2eMDBVer,
64+
"--mdbVersion", previousMdbVersion,
5765
"--diskSizeGB", diskSizeGB30,
5866
"--enableTerminationProtection",
5967
"--projectId", g.projectID,
@@ -66,7 +74,7 @@ func TestClustersFlags(t *testing.T) {
6674
var cluster *atlasv2.AdvancedClusterDescription
6775
require.NoError(t, json.Unmarshal(resp, &cluster))
6876

69-
ensureCluster(t, cluster, clusterName, e2eMDBVer, 30, true)
77+
ensureCluster(t, cluster, clusterName, previousMdbVersion, 30, true)
7078
})
7179

7280
t.Run("Load Sample Data", func(t *testing.T) {
@@ -207,7 +215,7 @@ func TestClustersFlags(t *testing.T) {
207215
"update",
208216
clusterName,
209217
"--diskSizeGB", diskSizeGB40,
210-
"--mdbVersion=5.0",
218+
"--mdbVersion", mdbVersion,
211219
"--disableTerminationProtection",
212220
"--projectId", g.projectID,
213221
"-o=json")
@@ -218,7 +226,7 @@ func TestClustersFlags(t *testing.T) {
218226
var cluster atlasv2.AdvancedClusterDescription
219227
require.NoError(t, json.Unmarshal(resp, &cluster))
220228

221-
ensureCluster(t, &cluster, clusterName, "5.0", 40, false)
229+
ensureCluster(t, &cluster, clusterName, mdbVersion, 40, false)
222230
})
223231

224232
t.Run("Delete", func(t *testing.T) {
@@ -231,3 +239,12 @@ func TestClustersFlags(t *testing.T) {
231239
assert.Contains(t, string(resp), expected)
232240
})
233241
}
242+
243+
func getPreviousMajorVersion(version string) (string, error) {
244+
v, err := semver.NewVersion(version)
245+
if err != nil {
246+
return "", err
247+
}
248+
249+
return fmt.Sprintf("%d.%d", v.Major()-1, v.Minor()), nil
250+
}

test/e2e/atlas/clusters_sharded_test.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ func TestShardedCluster(t *testing.T) {
4343
region, err := g.newAvailableRegion(tier, e2eClusterProvider)
4444
req.NoError(err)
4545

46+
mdbVersion, err := MongoDBMajorVersion()
47+
req.NoError(err)
48+
4649
t.Run("Create sharded cluster", func(t *testing.T) {
4750
cmd := exec.Command(cliPath,
4851
clustersEntity,
@@ -54,7 +57,7 @@ func TestShardedCluster(t *testing.T) {
5457
"--members=3",
5558
"--tier", tier,
5659
"--provider", e2eClusterProvider,
57-
"--mdbVersion", e2eMDBVer,
60+
"--mdbVersion", mdbVersion,
5861
"--diskSizeGB", diskSizeGB30,
5962
"--projectId", g.projectID,
6063
"-o=json")
@@ -66,7 +69,7 @@ func TestShardedCluster(t *testing.T) {
6669
var cluster atlasv2.AdvancedClusterDescription
6770
req.NoError(json.Unmarshal(resp, &cluster))
6871

69-
ensureCluster(t, &cluster, shardedClusterName, e2eMDBVer, 30, false)
72+
ensureCluster(t, &cluster, shardedClusterName, mdbVersion, 30, false)
7073
})
7174

7275
t.Run("Delete sharded cluster", func(t *testing.T) {

test/e2e/atlas/create_cluster_gov_test.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"diskSizeGB": 30,
1010
"encryptionAtRestProvider": "NONE",
1111
"groupId": "60e40e9e9e80a53e4f41686e",
12-
"mongoDBMajorVersion": "4.4",
12+
"mongoDBMajorVersion": "{{.MongoDBMajorVersion}}",
1313
"name": "Cluster0",
1414
"paused": false,
1515
"pitEnabled": true,

test/e2e/atlas/create_cluster_test.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"backupEnabled":false,
33
"diskSizeGB":30,
44
"numShards":1,
5-
"mongoDBMajorVersion":"4.4",
5+
"mongoDBMajorVersion":"{{.MongoDBMajorVersion}}",
66
"providerSettings":{
77
"providerName":"GCP",
88
"instanceSizeName":"M10"

0 commit comments

Comments
 (0)