Skip to content

Commit 88c5125

Browse files
Merge pull request #3122 from yuwang-RH/fix1128
OCM-21111 | test: fix id: 45745
2 parents c854a37 + 85eb2a5 commit 88c5125

File tree

2 files changed

+38
-39
lines changed

2 files changed

+38
-39
lines changed

tests/e2e/test_rosacli_operator_roles.go

Lines changed: 24 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1179,21 +1179,22 @@ var _ = Describe("Upgrade operator roles in auto mode",
11791179
Expect(err).To(BeNil())
11801180

11811181
By("Get cluster upgrade version")
1182-
versionService := rosaClient.Version
1183-
versionList, err := versionService.ListAndReflectVersions(rosacli.VersionChannelGroupCandidate, true)
1182+
output, err := upgradeService.ListUpgrades("-c", clusterID)
11841183
Expect(err).To(BeNil())
1185-
defaultVersion := versionList.DefaultVersion()
1186-
Expect(defaultVersion).ToNot(BeNil())
1187-
_, _, upgradeVersion, err := defaultVersion.MajorMinor()
1184+
upgradeVersionList, err := upgradeService.ReflectUpgradeVersionList(output)
1185+
Expect(err).To(BeNil())
1186+
Expect(len(upgradeVersionList.UpgradeVersions)).To(BeNumerically(">", 0),
1187+
"Expected at least one upgrade version to be available")
1188+
upgradingVersion := upgradeVersionList.UpgradeVersions[0].Version
1189+
_, _, roleUpgradeVersion, err := helper.GetMajorMinorFromVersion(upgradingVersion)
11881190
Expect(err).To(BeNil())
1189-
Expect(upgradeVersion).NotTo(BeEmpty())
11901191

11911192
By("Upgrade cluster to verify if there are any prompts to upgrade account roles firstly")
11921193
scheduledDate := time.Now().Format("2006-01-02")
11931194
scheduledTime := time.Now().Add(10 * time.Minute).UTC().Format("15:04")
1194-
output, err := upgradeService.Upgrade(
1195+
output, err = upgradeService.Upgrade(
11951196
"-c", clusterID,
1196-
"--version", defaultVersion.Version,
1197+
"--version", upgradingVersion,
11971198
"--schedule-date", scheduledDate,
11981199
"--schedule-time", scheduledTime,
11991200
"-m", "auto",
@@ -1206,16 +1207,16 @@ var _ = Describe("Upgrade operator roles in auto mode",
12061207
_, err = ocmResourceService.UpgradeAccountRole(
12071208
"--prefix", accountRolePrefix,
12081209
"--mode", "auto",
1209-
"--version", upgradeVersion,
1210+
"--version", roleUpgradeVersion,
12101211
"--channel-group", "candidate",
12111212
"-y",
12121213
)
12131214
Expect(err).To(BeNil())
12141215

12151216
By("Upgrade operator roles in auto mode")
12161217
output, err = ocmResourceService.UpgradeOperatorRoles(
1217-
"--cluster", clusterName,
1218-
"--version", defaultVersion.Version,
1218+
"--cluster", clusterID,
1219+
"--version", upgradingVersion,
12191220
"--mode", "auto",
12201221
"-y",
12211222
)
@@ -1224,49 +1225,33 @@ var _ = Describe("Upgrade operator roles in auto mode",
12241225
"policies"))
12251226
Expect(output.String()).To(ContainSubstring(
12261227
"policy/%s-openshift-image-registry-installer-cloud-credent' to version '%s'",
1227-
accountRolePrefix, upgradeVersion))
1228+
accountRolePrefix, roleUpgradeVersion))
12281229
Expect(output.String()).To(ContainSubstring(
12291230
"policy/%s-openshift-ingress-operator-cloud-credentials' to version '%s'",
1230-
accountRolePrefix, upgradeVersion))
1231+
accountRolePrefix, roleUpgradeVersion))
12311232
Expect(output.String()).To(ContainSubstring(
12321233
"policy/%s-openshift-cluster-csi-drivers-ebs-cloud-credenti' to version '%s'",
1233-
accountRolePrefix, upgradeVersion))
1234+
accountRolePrefix, roleUpgradeVersion))
12341235
Expect(output.String()).To(ContainSubstring(
12351236
"policy/%s-openshift-cloud-network-config-controller-cloud-' to version '%s'",
1236-
accountRolePrefix, upgradeVersion))
1237+
accountRolePrefix, roleUpgradeVersion))
12371238
Expect(output.String()).To(ContainSubstring(
12381239
"policy/%s-openshift-machine-api-aws-cloud-credentials' to version '%s'",
1239-
accountRolePrefix, upgradeVersion))
1240+
accountRolePrefix, roleUpgradeVersion))
12401241
Expect(output.String()).To(ContainSubstring(
12411242
"policy/%s-openshift-cloud-credential-operator-cloud-creden' to version '%s'",
1242-
accountRolePrefix, upgradeVersion))
1243+
accountRolePrefix, roleUpgradeVersion))
12431244
By("Update cluster with --dry-run")
1244-
1245-
output, err = upgradeService.Upgrade(
1245+
output, _ = upgradeService.Upgrade(
12461246
"-c", clusterID,
1247-
"--version", defaultVersion.Version,
1247+
"--version", upgradingVersion,
12481248
"--mode", "auto",
1249-
"--dry-run",
12501249
"-y",
12511250
)
1252-
1253-
Expect(err).To(BeNil())
1254-
Expect(output.String()).To(ContainSubstring("should succeed. Please wait 1 to 2 minutes"))
1255-
time.Sleep(3 * time.Minute)
1256-
1257-
By("Upgrade cluster")
1258-
scheduledDate = time.Now().Format("2006-01-02")
1259-
scheduledTime = time.Now().Add(10 * time.Minute).UTC().Format("15:04")
1260-
output, err = upgradeService.Upgrade(
1261-
"-c", clusterID,
1262-
"--version", defaultVersion.Version,
1263-
"--schedule-date", scheduledDate,
1264-
"--schedule-time", scheduledTime,
1265-
"-m", "auto",
1266-
"-y",
1267-
)
1268-
Expect(err).To(BeNil())
1269-
Expect(output.String()).To(ContainSubstring("Upgrade successfully scheduled for cluster"))
1251+
Expect(output.String()).To(ContainSubstring(
1252+
"Account roles/policies for cluster '%s' are already up-to-date", clusterID))
1253+
Expect(output.String()).To(ContainSubstring(
1254+
"Operator roles/policies associated with the cluster '%s' are already up-to-date", clusterID))
12701255
})
12711256
})
12721257

tests/utils/helper/helper.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,12 @@ package helper
22

33
import (
44
"crypto/rand"
5+
"fmt"
56
"math/big"
67
"os"
78

9+
"github.com/Masterminds/semver"
10+
811
"github.com/openshift/rosa/tests/utils/constants"
912
)
1013

@@ -33,3 +36,14 @@ func GetConsoleUrlBasedOnEnv(ocmApi string) string {
3336
return ""
3437
}
3538
}
39+
40+
func GetMajorMinorFromVersion(version string) (major int64, minor int64, majorMinorVersion string, err error) {
41+
var semverVersion *semver.Version
42+
if semverVersion, err = semver.NewVersion(version); err != nil {
43+
return
44+
}
45+
major = semverVersion.Major()
46+
minor = semverVersion.Minor()
47+
majorMinorVersion = fmt.Sprintf("%d.%d", major, minor)
48+
return
49+
}

0 commit comments

Comments
 (0)