summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2018-08-21 10:35:43 +0200
committerMartin Polden <mpolden@mpolden.no>2018-08-21 10:41:21 +0200
commit0ba05a10d83f7cdbf12173911fd58a4279d5192c (patch)
tree2fcd331d1341111549e8b78e4273b41cfe60e986
parent8d4355567768319f7b971297eaa208307f9269ad (diff)
Test that main is not upgraded
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java34
1 files changed, 31 insertions, 3 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java
index f4bd6985d93..44823ab5777 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java
@@ -55,7 +55,8 @@ public class OsUpgraderTest {
.upgrade(zone1)
.upgradeInParallel(zone2, zone3)
.upgrade(zone5) // Belongs to a different cloud and is ignored by this upgrader
- .upgrade(zone4)
+ .upgrade(zone4),
+ SystemName.cd
);
// Bootstrap system
@@ -118,6 +119,33 @@ public class OsUpgraderTest {
.allMatch(node -> node.version().equals(version1)));
}
+ // TODO: Remove once enabled in all systems
+ @Test
+ public void os_upgrade_in_main_does_nothing() {
+ OsUpgrader osUpgrader = osUpgrader(
+ UpgradePolicy.create()
+ .upgrade(zone1)
+ .upgradeInParallel(zone2, zone3)
+ .upgrade(zone4),
+ SystemName.main
+ );
+
+ // Bootstrap system
+ tester.configServer().bootstrap(Arrays.asList(zone1, zone2, zone3, zone4, zone5),
+ singletonList(SystemApplication.zone),
+ Optional.of(NodeType.host));
+
+ // New OS is released
+ CloudName cloud = CloudName.defaultName();
+ Version version1 = Version.fromString("7.1");
+ tester.controller().upgradeOsIn(cloud, version1);
+ statusUpdater.maintain();
+
+ // Nothing happens as main is explicitly disabled
+ osUpgrader.maintain();
+ assertWanted(Version.emptyVersion, SystemApplication.zone, zone1);
+ }
+
private List<OsVersionStatus.Node> nodesOn(Version version) {
return tester.controller().osVersionStatus().versions().entrySet().stream()
.filter(entry -> entry.getKey().version().equals(version))
@@ -178,10 +206,10 @@ public class OsUpgraderTest {
return tester.controllerTester().configServer().nodeRepository();
}
- private OsUpgrader osUpgrader(UpgradePolicy upgradePolicy) {
+ private OsUpgrader osUpgrader(UpgradePolicy upgradePolicy, SystemName system) {
tester.controllerTester().zoneRegistry()
.setZones(zone1, zone2, zone3, zone4, zone5)
- .setSystemName(SystemName.cd)
+ .setSystemName(system)
.setUpgradePolicy(upgradePolicy);
return new OsUpgrader(tester.controller(), Duration.ofDays(1),
new JobControl(tester.controllerTester().curator()), CloudName.defaultName());