diff options
author | Martin Polden <mpolden@mpolden.no> | 2019-02-28 10:02:02 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2019-04-23 14:51:07 +0200 |
commit | 6ea90e965c39f61e3df6953d99107312a5a89955 (patch) | |
tree | bae6705408f49194ec39c9ed36d39b05700bc728 /node-repository | |
parent | 979a2980aeaf89cc111f9dec74fa46cf191a8d8f (diff) |
Remove feature flag guard for exclusive load balancers
Diffstat (limited to 'node-repository')
14 files changed, 240 insertions, 59 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 629bbf56884..f5f8ed53d2a 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 @@ -4,6 +4,7 @@ package com.yahoo.vespa.hosted.provision.provisioning; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.ClusterSpec; import com.yahoo.config.provision.HostName; +import com.yahoo.config.provision.NodeType; import com.yahoo.transaction.Mutex; import com.yahoo.transaction.NestedTransaction; import com.yahoo.vespa.hosted.provision.Node; @@ -93,7 +94,7 @@ public class LoadBalancerProvisioner { /** Returns a list of active containers for given application, grouped by cluster spec */ private Map<ClusterSpec, List<Node>> activeContainers(ApplicationId application) { - return new NodeList(nodeRepository.getNodes(Node.State.active)) + return new NodeList(nodeRepository.getNodes(NodeType.tenant, Node.State.active)) .owner(application) .filter(node -> node.state().isAllocated()) .type(ClusterSpec.Type.container) diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java index 246c56ee28b..c91d28e17ce 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java @@ -21,7 +21,6 @@ import com.yahoo.vespa.flags.FlagSource; import com.yahoo.vespa.flags.Flags; import com.yahoo.vespa.hosted.provision.Node; import com.yahoo.vespa.hosted.provision.NodeRepository; -import com.yahoo.vespa.hosted.provision.flag.FlagId; import com.yahoo.vespa.hosted.provision.node.Allocation; import com.yahoo.vespa.hosted.provision.node.filter.ApplicationFilter; import com.yahoo.vespa.hosted.provision.node.filter.NodeHostFilter; @@ -116,13 +115,11 @@ public class NodeRepositoryProvisioner implements Provisioner { validate(hosts); activator.activate(application, hosts, transaction); transaction.onCommitted(() -> { - if (nodeRepository.flags().get(FlagId.exclusiveLoadBalancer).isEnabled(application)) { - try { - loadBalancerProvisioner.ifPresent(lbProvisioner -> lbProvisioner.provision(application)); - } catch (Exception e) { - log.log(LogLevel.ERROR, "Failed to provision load balancer for application " + - application.toShortString(), e); - } + try { + loadBalancerProvisioner.ifPresent(lbProvisioner -> lbProvisioner.provision(application)); + } catch (Exception e) { + log.log(LogLevel.ERROR, "Failed to provision load balancer for application " + + application.toShortString(), e); } }); } diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockNodeRepository.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockNodeRepository.java index 83f5d6bf783..ca02c0c215b 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockNodeRepository.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockNodeRepository.java @@ -85,8 +85,10 @@ public class MockNodeRepository extends NodeRepository { nodes.add(createNode("node6", "host6.yahoo.com", ipAddresses, Optional.empty(), flavors.getFlavorOrThrow("default"), NodeType.tenant)); - nodes.add(createNode("node7", "host7.yahoo.com", ipAddresses, Optional.empty(), flavors.getFlavorOrThrow("default"), NodeType.tenant)); - // 8 and 9 are added by web service calls + Node node7 = createNode("node7", "host7.yahoo.com", ipAddresses, Optional.empty(), flavors.getFlavorOrThrow("default"), NodeType.tenant); + nodes.add(node7); + + // 8, 9, 11 and 12 are added by web service calls Node node10 = createNode("node10", "host10.yahoo.com", ipAddresses, Optional.of("parent1.yahoo.com"), flavors.getFlavorOrThrow("default"), NodeType.tenant); Status node10newStatus = node10.status(); node10newStatus = node10newStatus @@ -95,6 +97,11 @@ public class MockNodeRepository extends NodeRepository { node10 = node10.with(node10newStatus); nodes.add(node10); + Node node13 = createNode("node13", "host13.yahoo.com", ipAddresses, Optional.empty(), flavors.getFlavorOrThrow("large"), NodeType.tenant); + Node node14 = createNode("node14", "host14.yahoo.com", ipAddresses, Optional.empty(), flavors.getFlavorOrThrow("large"), NodeType.tenant); + nodes.add(node13); + nodes.add(node14); + Node node55 = createNode("node55", "host55.yahoo.com", ipAddresses, Optional.empty(), flavors.getFlavorOrThrow("default"), NodeType.tenant); nodes.add(node55.with(node55.status().withWantToRetire(true).withWantToDeprovision(true))); @@ -109,14 +116,15 @@ public class MockNodeRepository extends NodeRepository { nodes.add(createNode("cfg1", "cfg1.yahoo.com", Collections.singleton("127.0.1.1"), Optional.empty(), flavors.getFlavorOrThrow("default"), NodeType.config)); nodes.add(createNode("cfg2", "cfg2.yahoo.com", Collections.singleton("127.0.1.2"), Optional.empty(), flavors.getFlavorOrThrow("default"), NodeType.config)); + // Ready all nodes, except 7 and 55 nodes = addNodes(nodes); - nodes.remove(6); - nodes.remove(7); + nodes.remove(node7); + nodes.remove(node55); nodes = setDirty(nodes, Agent.system, getClass().getSimpleName()); setReady(nodes, Agent.system, getClass().getSimpleName()); - fail("host5.yahoo.com", Agent.system, getClass().getSimpleName()); - dirtyRecursively("host55.yahoo.com", Agent.system, getClass().getSimpleName()); + fail(node5.hostname(), Agent.system, getClass().getSimpleName()); + dirtyRecursively(node55.hostname(), Agent.system, getClass().getSimpleName()); ApplicationId zoneApp = ApplicationId.from(TenantName.from("zoneapp"), ApplicationName.from("zoneapp"), InstanceName.from("zoneapp")); // TODO: Remove this once feature flag is removed @@ -148,6 +156,13 @@ public class MockNodeRepository extends NodeRepository { Version.fromString("6.42"), false, Collections.emptySet()); activate(provisioner.prepare(app3, cluster3, Capacity.fromNodeCount(2, Optional.of("docker"), false, true), 1, null), app3, provisioner); + + ApplicationId app4 = ApplicationId.from(TenantName.from("tenant4"), ApplicationName.from("application4"), InstanceName.from("instance4")); + ClusterSpec cluster4 = ClusterSpec.request(ClusterSpec.Type.container, + ClusterSpec.Id.from("id4"), + Version.fromString("6.42"), + false, Collections.emptySet()); + activate(provisioner.prepare(app4, cluster4, Capacity.fromNodeCount(2, Optional.of("large"), false, true), 1, null), app4, provisioner); } private void activate(List<HostSpec> hosts, ApplicationId application, NodeRepositoryProvisioner provisioner) { diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/AclProvisioningTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/AclProvisioningTest.java index 46fd2183faa..a55211a112a 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/AclProvisioningTest.java +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/AclProvisioningTest.java @@ -9,7 +9,6 @@ import com.yahoo.config.provision.ClusterSpec; import com.yahoo.config.provision.HostSpec; import com.yahoo.config.provision.NodeType; import com.yahoo.vespa.hosted.provision.Node; -import com.yahoo.vespa.hosted.provision.flag.FlagId; import com.yahoo.vespa.hosted.provision.node.NodeAcl; import org.junit.Test; @@ -57,15 +56,9 @@ public class AclProvisioningTest { Supplier<List<NodeAcl>> nodeAcls = () -> tester.nodeRepository().getNodeAcls(node, false); // Trusted nodes is active nodes in same application, proxy nodes and config servers - assertAcls(Arrays.asList(activeNodes, proxyNodes, configServers, dockerHost), nodeAcls.get()); - - // Allocate load balancer - tester.nodeRepository().flags().setEnabled(FlagId.exclusiveLoadBalancer, application, true); - deploy(application, 2); - - // Load balancer networks are added to ACLs assertAcls(Arrays.asList(activeNodes, proxyNodes, configServers, dockerHost), - ImmutableSet.of("10.2.3.0/24", "10.4.5.0/24"), nodeAcls.get()); + ImmutableSet.of("10.2.3.0/24", "10.4.5.0/24"), + nodeAcls.get()); } @Test diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java index 04664bd1d16..6dca643da7c 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/RestApiTest.java @@ -49,7 +49,7 @@ public class RestApiTest { @After public void stopContainer() { - container.close(); + if (container != null) container.close(); } /** This test gives examples of all the requests that can be made to nodes/v2 */ @@ -76,17 +76,17 @@ public class RestApiTest { new byte[0], Request.Method.POST)); assertRestart(2, new Request("http://localhost:8080/nodes/v2/command/restart?application=tenant2.application2.instance2", new byte[0], Request.Method.POST)); - assertRestart(9, new Request("http://localhost:8080/nodes/v2/command/restart", + assertRestart(11, new Request("http://localhost:8080/nodes/v2/command/restart", new byte[0], Request.Method.POST)); assertResponseContains(new Request("http://localhost:8080/nodes/v2/node/host2.yahoo.com"), "\"restartGeneration\":3"); // POST reboot command - assertReboot(10, new Request("http://localhost:8080/nodes/v2/command/reboot?state=failed%20active", + assertReboot(12, new Request("http://localhost:8080/nodes/v2/command/reboot?state=failed%20active", new byte[0], Request.Method.POST)); assertReboot(2, new Request("http://localhost:8080/nodes/v2/command/reboot?application=tenant2.application2.instance2", new byte[0], Request.Method.POST)); - assertReboot(17, new Request("http://localhost:8080/nodes/v2/command/reboot", + assertReboot(19, new Request("http://localhost:8080/nodes/v2/command/reboot", new byte[0], Request.Method.POST)); assertResponseContains(new Request("http://localhost:8080/nodes/v2/node/host2.yahoo.com"), "\"rebootGeneration\":4"); @@ -819,8 +819,8 @@ public class RestApiTest { /** Tests the rendering of each node separately to make it easier to find errors */ @Test public void test_single_node_rendering() throws Exception { - for (int i = 1; i <= 10; i++) { - if (i == 8 || i == 9) continue; // these nodes are added later + for (int i = 1; i <= 14; i++) { + if (i == 8 || i == 9 || i == 11 || i == 12) continue; // these nodes are added later assertFile(new Request("http://localhost:8080/nodes/v2/node/host" + i + ".yahoo.com"), "node" + i + ".json"); } } @@ -828,7 +828,7 @@ public class RestApiTest { @Test public void test_load_balancers() throws Exception { assertFile(new Request("http://localhost:8080/loadbalancers/v1/"), "load-balancers.json"); - assertFile(new Request("http://localhost:8080/loadbalancers/v1/?application=zoneapp.zoneapp.zoneapp"), "load-balancers.json"); + assertFile(new Request("http://localhost:8080/loadbalancers/v1/?application=tenant4.application4.instance4"), "load-balancers.json"); assertResponse(new Request("http://localhost:8080/loadbalancers/v1/?application=tenant.nonexistent.default"), "{\"loadBalancers\":[]}"); } diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-config-server.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-config-server.json index 92b5885cde4..05fa3e8ad72 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-config-server.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-config-server.json @@ -97,6 +97,30 @@ "trustedBy": "cfg1.yahoo.com" }, { + "hostname": "host13.yahoo.com", + "type": "tenant", + "ipAddress": "127.0.0.1", + "trustedBy": "cfg1.yahoo.com" + }, + { + "hostname": "host13.yahoo.com", + "type": "tenant", + "ipAddress": "::1", + "trustedBy": "cfg1.yahoo.com" + }, + { + "hostname": "host14.yahoo.com", + "type": "tenant", + "ipAddress": "127.0.0.1", + "trustedBy": "cfg1.yahoo.com" + }, + { + "hostname": "host14.yahoo.com", + "type": "tenant", + "ipAddress": "::1", + "trustedBy": "cfg1.yahoo.com" + }, + { "hostname": "host2.yahoo.com", "type": "tenant", "ipAddress": "127.0.0.1", diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-tenant-node.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-tenant-node.json index 66d92ecc9fe..75c9aaa2b5c 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-tenant-node.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/acl-tenant-node.json @@ -43,6 +43,30 @@ "trustedBy": "foo.yahoo.com" }, { + "hostname": "host13.yahoo.com", + "type": "tenant", + "ipAddress": "127.0.0.1", + "trustedBy": "foo.yahoo.com" + }, + { + "hostname": "host13.yahoo.com", + "type": "tenant", + "ipAddress": "::1", + "trustedBy": "foo.yahoo.com" + }, + { + "hostname": "host14.yahoo.com", + "type": "tenant", + "ipAddress": "127.0.0.1", + "trustedBy": "foo.yahoo.com" + }, + { + "hostname": "host14.yahoo.com", + "type": "tenant", + "ipAddress": "::1", + "trustedBy": "foo.yahoo.com" + }, + { "hostname": "host2.yahoo.com", "type": "tenant", "ipAddress": "127.0.0.1", diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/active-nodes.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/active-nodes.json index 9c462bb5520..a5d8148c1e4 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/active-nodes.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/active-nodes.json @@ -1,7 +1,9 @@ { "nodes": [ @include(node6.json), + @include(node13.json), @include(node2.json), + @include(node14.json), @include(docker-container1.json), @include(node4.json), @include(docker-node4.json), diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/load-balancers.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/load-balancers.json index e3baa069907..c8738ab838c 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/load-balancers.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/load-balancers.json @@ -1,12 +1,12 @@ { "loadBalancers": [ { - "id": "zoneapp:zoneapp:zoneapp:node-admin", - "application": "zoneapp", - "tenant": "zoneapp", - "instance": "zoneapp", - "cluster": "node-admin", - "hostname": "lb-zoneapp.zoneapp.zoneapp-node-admin", + "id": "tenant4:application4:instance4:id4", + "application": "application4", + "tenant": "tenant4", + "instance": "instance4", + "cluster": "id4", + "hostname": "lb-tenant4.application4.instance4-id4", "dnsZone": "zone-id-1", "networks": [ "10.2.3.0/24", @@ -17,36 +17,17 @@ ], "reals": [ { - "hostname": "dockerhost1.yahoo.com", + "hostname": "host13.yahoo.com", "ipAddress": "127.0.0.1", "port": 4080 }, { - "hostname": "dockerhost2.yahoo.com", + "hostname": "host14.yahoo.com", "ipAddress": "127.0.0.1", "port": 4080 - }, - { - "hostname": "dockerhost3.yahoo.com", - "ipAddress": "127.0.0.1", - "port": 4080 - }, - { - "hostname": "dockerhost4.yahoo.com", - "ipAddress": "127.0.0.1", - "port": 4080 - }, - { - "hostname": "dockerhost5.yahoo.com", - "ipAddress": "127.0.0.1", - "port": 4080 - } - ], - "rotations": [ - { - "name": "us-cluster" } ], + "rotations": [], "inactive": false } ] diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/node13.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/node13.json new file mode 100644 index 00000000000..1584231f208 --- /dev/null +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/node13.json @@ -0,0 +1,67 @@ +{ + "url": "http://localhost:8080/nodes/v2/node/host13.yahoo.com", + "id": "host13.yahoo.com", + "state": "active", + "type": "tenant", + "hostname": "host13.yahoo.com", + "openStackId": "node13", + "flavor": "large", + "canonicalFlavor": "large", + "minDiskAvailableGb": 1600.0, + "minMainMemoryAvailableGb": 32.0, + "description": "Flavor-name-is-large", + "minCpuCores": 4.0, + "fastDisk": true, + "bandwidth": 0.0, + "environment": "BARE_METAL", + "owner": { + "tenant": "tenant4", + "application": "application4", + "instance": "instance4" + }, + "membership": { + "clustertype": "container", + "clusterid": "id4", + "group": "0", + "index": 0, + "retired": false + }, + "restartGeneration": 0, + "currentRestartGeneration": 0, + "wantedDockerImage": "docker-registry.domain.tld:8080/dist/vespa:6.42.0", + "wantedVespaVersion": "6.42.0", + "allowedToBeDown": false, + "rebootGeneration": 1, + "currentRebootGeneration": 0, + "failCount": 0, + "hardwareFailure": false, + "wantToRetire": false, + "wantToDeprovision": false, + "history": [ + { + "event": "provisioned", + "at": 123, + "agent": "system" + }, + { + "event": "readied", + "at": 123, + "agent": "system" + }, + { + "event": "reserved", + "at": 123, + "agent": "application" + }, + { + "event": "activated", + "at": 123, + "agent": "application" + } + ], + "ipAddresses": [ + "127.0.0.1", + "::1" + ], + "additionalIpAddresses": [] +} diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/node14.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/node14.json new file mode 100644 index 00000000000..462f6e2433f --- /dev/null +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/node14.json @@ -0,0 +1,67 @@ +{ + "url": "http://localhost:8080/nodes/v2/node/host14.yahoo.com", + "id": "host14.yahoo.com", + "state": "active", + "type": "tenant", + "hostname": "host14.yahoo.com", + "openStackId": "node14", + "flavor": "large", + "canonicalFlavor": "large", + "minDiskAvailableGb": 1600.0, + "minMainMemoryAvailableGb": 32.0, + "description": "Flavor-name-is-large", + "minCpuCores": 4.0, + "fastDisk": true, + "bandwidth": 0.0, + "environment": "BARE_METAL", + "owner": { + "tenant": "tenant4", + "application": "application4", + "instance": "instance4" + }, + "membership": { + "clustertype": "container", + "clusterid": "id4", + "group": "0", + "index": 1, + "retired": false + }, + "restartGeneration": 0, + "currentRestartGeneration": 0, + "wantedDockerImage": "docker-registry.domain.tld:8080/dist/vespa:6.42.0", + "wantedVespaVersion": "6.42.0", + "allowedToBeDown": false, + "rebootGeneration": 1, + "currentRebootGeneration": 0, + "failCount": 0, + "hardwareFailure": false, + "wantToRetire": false, + "wantToDeprovision": false, + "history": [ + { + "event": "provisioned", + "at": 123, + "agent": "system" + }, + { + "event": "readied", + "at": 123, + "agent": "system" + }, + { + "event": "reserved", + "at": 123, + "agent": "application" + }, + { + "event": "activated", + "at": 123, + "agent": "application" + } + ], + "ipAddresses": [ + "127.0.0.1", + "::1" + ], + "additionalIpAddresses": [] +} diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes-recursive.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes-recursive.json index 57aee72e9f8..5f51f53fb2b 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes-recursive.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes-recursive.json @@ -10,9 +10,11 @@ @include(node6.json), @include(docker-node5.json), @include(docker-node2.json), + @include(node13.json), @include(node2.json), @include(docker-node1.json), @include(docker-node3.json), + @include(node14.json), @include(docker-container1.json), @include(node4.json), @include(node55.json), diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes.json index 1c069951750..8f29a774fb4 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/nodes.json @@ -31,6 +31,9 @@ "url": "http://localhost:8080/nodes/v2/node/dockerhost2.yahoo.com" }, { + "url": "http://localhost:8080/nodes/v2/node/host13.yahoo.com" + }, + { "url": "http://localhost:8080/nodes/v2/node/host2.yahoo.com" }, { @@ -40,6 +43,9 @@ "url": "http://localhost:8080/nodes/v2/node/dockerhost3.yahoo.com" }, { + "url": "http://localhost:8080/nodes/v2/node/host14.yahoo.com" + }, + { "url": "http://localhost:8080/nodes/v2/node/test-container-1" }, { diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/states-recursive.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/states-recursive.json index e60ebe37246..5d90346eec7 100644 --- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/states-recursive.json +++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/v2/responses/states-recursive.json @@ -25,7 +25,9 @@ "url": "http://localhost:8080/nodes/v2/state/active", "nodes": [ @include(node6.json), + @include(node13.json), @include(node2.json), + @include(node14.json), @include(docker-container1.json), @include(node4.json), @include(docker-node4.json), |