summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2019-02-04 09:31:18 +0100
committerMartin Polden <mpolden@mpolden.no>2019-02-04 09:33:19 +0100
commit4cabf81b4078dc5974d37270f1170a92e5ed37b8 (patch)
treeaacb1e26fa47c3b9d64daa3535d2e194fbbe5214 /configserver
parent143348b1f6fe210ec8a3a0d22eb07cac56a07825 (diff)
Add rotations to cluster spec
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java25
1 files changed, 23 insertions, 2 deletions
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java
index d64cf963be7..143b9b34a35 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java
@@ -4,6 +4,7 @@ package com.yahoo.vespa.config.server.deploy;
import com.google.common.collect.ImmutableSet;
import com.google.common.io.Files;
import com.yahoo.cloud.config.ConfigserverConfig;
+import com.yahoo.component.Version;
import com.yahoo.config.model.api.ConfigChangeAction;
import com.yahoo.config.model.api.ModelContext;
import com.yahoo.config.model.api.ModelCreateResult;
@@ -14,12 +15,13 @@ import com.yahoo.config.model.provision.Host;
import com.yahoo.config.model.provision.Hosts;
import com.yahoo.config.model.provision.InMemoryProvisioner;
import com.yahoo.config.provision.ApplicationId;
+import com.yahoo.config.provision.ClusterSpec;
import com.yahoo.config.provision.Environment;
+import com.yahoo.config.provision.HostSpec;
import com.yahoo.config.provision.RegionName;
-import com.yahoo.component.Version;
+import com.yahoo.config.provision.RotationName;
import com.yahoo.config.provision.Zone;
import com.yahoo.test.ManualClock;
-
import com.yahoo.vespa.config.server.configchange.MockRestartAction;
import com.yahoo.vespa.config.server.configchange.RestartActions;
import com.yahoo.vespa.config.server.http.v2.PrepareResult;
@@ -36,6 +38,7 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Optional;
+import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
@@ -294,6 +297,24 @@ public class HostedDeployTest {
assertThat(actions.get(0).getMessages(), equalTo(ImmutableSet.of("change", "other change")));
}
+ @Test
+ public void testDeployWithClusterRotations() {
+ CountingModelFactory modelFactory = DeployTester.createModelFactory(Version.fromString("4.5.6"), Clock.systemUTC());
+ DeployTester tester = new DeployTester(Collections.singletonList(modelFactory), createConfigserverConfig());
+ ApplicationId applicationId = tester.applicationId();
+
+ tester.deployApp("src/test/apps/hosted/", "4.5.6", Instant.now());
+ Set<HostSpec> containers = tester.getAllocatedHostsOf(applicationId).getHosts().stream()
+ .filter(h -> h.membership().get().cluster().type() == ClusterSpec.Type.container)
+ .collect(Collectors.toSet());
+ assertFalse("Allocated container hosts", containers.isEmpty());
+
+ Set<RotationName> expected = Set.of(RotationName.from("eu-cluster"), RotationName.from("us-cluster"));
+ for (HostSpec container : containers) {
+ assertEquals(expected, container.membership().get().cluster().rotations());
+ }
+ }
+
private static ConfigserverConfig createConfigserverConfig() {
return new ConfigserverConfig(new ConfigserverConfig.Builder()
.configServerDBDir(Files.createTempDir().getAbsolutePath())