aboutsummaryrefslogtreecommitdiffstats
path: root/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2019-10-10 11:32:05 +0200
committerMartin Polden <mpolden@mpolden.no>2019-10-10 15:36:38 +0200
commitd01885d1971b43b67c2941ee5cd81f0b24c1d030 (patch)
treea838451e50cf51bfa6e37f5338c884b2acb6b676 /controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
parentafba8e4ecd0237eed6f670b0de65d68cf9a6047d (diff)
Make OS upgrade timeout dynamic
Diffstat (limited to 'controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java')
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java20
1 files changed, 14 insertions, 6 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
index 0ea4abc2203..81e33b490f3 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java
@@ -275,13 +275,14 @@ public class MetricsReporterTest {
new JobControl(tester.controllerTester().curator()), CloudName.defaultName());;
var statusUpdater = new OsVersionStatusUpdater(tester.controller(), Duration.ofDays(1),
new JobControl(tester.controller().curator()));
- tester.configServer().bootstrap(List.of(zone.getId()), SystemApplication.tenantHost);
+ tester.configServer().bootstrap(List.of(zone.getId()), SystemApplication.configServerHost, SystemApplication.tenantHost);
// All nodes upgrade to initial OS version
var version0 = Version.fromString("8.0");
tester.controller().upgradeOsIn(cloud, version0, false);
osUpgrader.maintain();
tester.configServer().setOsVersion(SystemApplication.tenantHost.id(), zone.getId(), version0);
+ tester.configServer().setOsVersion(SystemApplication.configServerHost.id(), zone.getId(), version0);
statusUpdater.maintain();
reporter.maintain();
assertEquals(0, getNodesFailingOsUpgrade());
@@ -300,15 +301,22 @@ public class MetricsReporterTest {
reporter.maintain();
assertEquals(0, getNodesFailingOsUpgrade());
- // 1/3 nodes upgrade within timeout
- tester.configServer().setOsVersion(SystemApplication.tenantHost.id(), zone.getId(), version, 1);
- tester.clock().advance(Duration.ofMinutes(30).plus(Duration.ofSeconds(1)));
+ // 2/6 nodes upgrade within timeout
+ tester.configServer().setOsVersion(SystemApplication.tenantHost.id(), zone.getId(), version, 2);
+ tester.clock().advance(Duration.ofMinutes(30 * 3 /* time allowance * node count */).plus(Duration.ofSeconds(1)));
statusUpdater.maintain();
reporter.maintain();
- assertEquals(2, getNodesFailingOsUpgrade());
+ assertEquals(4, getNodesFailingOsUpgrade());
- // 3/3 nodes upgrade
+ // 5/6 nodes upgrade
tester.configServer().setOsVersion(SystemApplication.tenantHost.id(), zone.getId(), version);
+ tester.configServer().setOsVersion(SystemApplication.configServerHost.id(), zone.getId(), version, 2);
+ statusUpdater.maintain();
+ reporter.maintain();
+ assertEquals(1, getNodesFailingOsUpgrade());
+
+ // Final node upgrades
+ tester.configServer().setOsVersion(SystemApplication.configServerHost.id(), zone.getId(), version);
statusUpdater.maintain();
reporter.maintain();
assertEquals(0, getNodesFailingOsUpgrade());