summaryrefslogtreecommitdiffstats
path: root/node-repository/src
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@verizonmedia.com>2020-08-10 15:23:20 +0200
committerValerij Fredriksen <valerijf@verizonmedia.com>2020-08-10 15:24:20 +0200
commit5573411c823144ecab2c60c0d21e828a47a7e479 (patch)
treef04710c2254398742acba862faf62ae341e46908 /node-repository/src
parent43f1f5c14502df06907fbf390abf96c006cabdc5 (diff)
Use node type rather than flavor environment to determine node type
Diffstat (limited to 'node-repository/src')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java4
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java9
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiTest.java10
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/node9.json2
4 files changed, 10 insertions, 15 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java
index 7bf76b7c2c2..ddf995bbe46 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java
@@ -735,11 +735,11 @@ public class NodeRepository extends AbstractComponent {
if (node.type() == NodeType.tenant && node.allocation().isPresent())
illegal(node + " is currently allocated and cannot be removed");
- if (node.flavor().getType() == Flavor.Type.DOCKER_CONTAINER && !removingAsChild) {
+ if (!node.type().isHost() && !removingAsChild) {
if (node.state() != State.ready)
illegal(node + " can not be removed as it is not in the state " + State.ready);
}
- else if (node.flavor().getType() == Flavor.Type.DOCKER_CONTAINER) { // removing a child node
+ else if (!node.type().isHost()) { // removing a child node
Set<State> legalStates = EnumSet.of(State.provisioned, State.failed, State.parked, State.dirty, State.ready);
if ( ! legalStates.contains(node.state()))
illegal(node + " can not be removed as it is not in the states " + legalStates);
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java
index 9d5e7691fe8..f8aed27dcdf 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java
@@ -36,16 +36,17 @@ public class NodeRepositoryTest {
NodeRepositoryTester tester = new NodeRepositoryTester();
assertEquals(0, tester.nodeRepository().getNodes().size());
- tester.addNode("id1", "host1", "default", NodeType.tenant);
- tester.addNode("id2", "host2", "default", NodeType.tenant);
- tester.addNode("id3", "host3", "default", NodeType.tenant);
+ tester.addNode("id1", "host1", "default", NodeType.host);
+ tester.addNode("id2", "host2", "default", NodeType.host);
+ tester.addNode("id3", "host3", "default", NodeType.host);
assertEquals(3, tester.nodeRepository().getNodes().size());
tester.nodeRepository().park("host2", true, Agent.system, "Parking to unit test");
tester.nodeRepository().removeRecursively("host2");
- assertEquals(2, tester.nodeRepository().getNodes().size());
+ assertEquals(3, tester.nodeRepository().getNodes().size());
+ assertEquals(1, tester.nodeRepository().getNodes(Node.State.deprovisioned).size());
}
@Test
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiTest.java
index 81bf999a184..87bc34185be 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiTest.java
@@ -90,7 +90,7 @@ public class NodesV2ApiTest {
// POST new nodes
assertResponse(new Request("http://localhost:8080/nodes/v2/node",
("[" + asNodeJson("host8.yahoo.com", "default", "127.0.8.1") + "," + // test with only 1 ip address
- asNodeJson("host9.yahoo.com", "large-variant", "127.0.9.1", "::9:1") + "," +
+ asHostJson("host9.yahoo.com", "large-variant", Optional.empty(), "127.0.9.1", "::9:1") + "," +
asHostJson("parent2.yahoo.com", "large-variant", Optional.of(TenantName.from("myTenant")), "127.0.127.1", "::127:1") + "," +
asDockerNodeJson("host11.yahoo.com", "parent.host.yahoo.com", "::11") + "]").
getBytes(StandardCharsets.UTF_8),
@@ -137,13 +137,7 @@ public class NodesV2ApiTest {
new byte[0], Request.Method.PUT),
"{\"message\":\"Moved host2.yahoo.com to active\"}");
- // PUT a node in parked ...
- assertResponse(new Request("http://localhost:8080/nodes/v2/state/parked/host8.yahoo.com",
- new byte[0], Request.Method.PUT),
- "{\"message\":\"Moved host8.yahoo.com to parked\"}");
- tester.assertResponseContains(new Request("http://localhost:8080()/nodes/v2/node/host8.yahoo.com"),
- "\"state\":\"parked\"");
- // ... and delete it
+ // Delete a ready node
assertResponse(new Request("http://localhost:8080/nodes/v2/node/host8.yahoo.com",
new byte[0], Request.Method.DELETE),
"{\"message\":\"Removed host8.yahoo.com\"}");
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/node9.json b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/node9.json
index 5f388c13f28..a5672f25d57 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/node9.json
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/restapi/responses/node9.json
@@ -2,7 +2,7 @@
"url": "http://localhost:8080/nodes/v2/node/host9.yahoo.com",
"id": "host9.yahoo.com",
"state": "provisioned",
- "type": "tenant",
+ "type": "host",
"hostname": "host9.yahoo.com",
"openStackId": "host9.yahoo.com",
"flavor": "large-variant",