aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2019-03-01 14:51:35 +0100
committerMartin Polden <mpolden@mpolden.no>2019-03-01 15:10:58 +0100
commitcff7a62ee0538266e34c7e6b67ece22d984938cd (patch)
tree6b4b7e72ff269a0f58612891d4c9a2544ec394fa /node-repository
parent127a8b5d6c3e82c0167f89e7077de28da220d57e (diff)
Test load balancer re-activation
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java1
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisionerTest.java12
2 files changed, 13 insertions, 0 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java
index da64e260157..629bbf56884 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java
@@ -95,6 +95,7 @@ public class LoadBalancerProvisioner {
private Map<ClusterSpec, List<Node>> activeContainers(ApplicationId application) {
return new NodeList(nodeRepository.getNodes(Node.State.active))
.owner(application)
+ .filter(node -> node.state().isAllocated())
.type(ClusterSpec.Type.container)
.asList()
.stream()
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisionerTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisionerTest.java
index 90339a55836..2ed15b0a06f 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisionerTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisionerTest.java
@@ -26,6 +26,7 @@ import java.util.function.Supplier;
import java.util.stream.Collectors;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
/**
@@ -115,6 +116,17 @@ public class LoadBalancerProvisionerTest {
assertEquals(2, loadBalancers.get().size());
assertTrue("Deactivated load balancers", loadBalancers.get().stream().allMatch(LoadBalancer::inactive));
+
+ // Application is redeployed with one cluster and load balancer is re-activated
+ tester.activate(app1, prepare(app1,
+ clusterRequest(ClusterSpec.Type.container, containerCluster1),
+ clusterRequest(ClusterSpec.Type.content, contentCluster)));
+ assertFalse("Re-activated load balancer for " + containerCluster1,
+ loadBalancers.get().stream()
+ .filter(lb -> lb.id().cluster().equals(containerCluster1))
+ .findFirst()
+ .orElseThrow()
+ .inactive());
}
private ClusterSpec clusterRequest(ClusterSpec.Type type, ClusterSpec.Id id) {