diff options
author | Håkon Hallingstad <hakon@yahooinc.com> | 2024-02-16 16:45:27 +0100 |
---|---|---|
committer | Håkon Hallingstad <hakon@yahooinc.com> | 2024-02-16 16:45:27 +0100 |
commit | 80f4fd8d0012bf50f4bcf7d5b7a1dc3d574ff450 (patch) | |
tree | a8cc37360a26cd5f87ce51c57e08bc62f23571ac /node-repository/src | |
parent | 7c38895db17aff80157e34148be4fa9879719c4d (diff) |
Set extraId if present when adding node
Diffstat (limited to 'node-repository/src')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java | 8 | ||||
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiHandler.java | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java index 48c85aed640..36221d978a1 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/Node.java @@ -732,6 +732,7 @@ public final class Node implements Nodelike { private final State state; private final NodeType type; + private String extraId; private String parentHostname; private String modelName; private TenantName reservedTo; @@ -758,6 +759,11 @@ public final class Node implements Nodelike { this.type = type; } + public Builder extraId(String extraId) { + this.extraId = extraId; + return this; + } + public Builder parentHostname(String parentHostname) { this.parentHostname = parentHostname; return this; @@ -849,7 +855,7 @@ public final class Node implements Nodelike { } public Node build() { - return new Node(id, Optional.empty(), Optional.ofNullable(ipConfig).orElse(IP.Config.EMPTY), hostname, Optional.ofNullable(parentHostname), + return new Node(id, Optional.ofNullable(extraId), Optional.ofNullable(ipConfig).orElse(IP.Config.EMPTY), hostname, Optional.ofNullable(parentHostname), flavor, Optional.ofNullable(status).orElseGet(Status::initial), state, Optional.ofNullable(allocation), Optional.ofNullable(history).orElseGet(History::empty), type, Optional.ofNullable(reports).orElseGet(Reports::new), Optional.ofNullable(modelName), Optional.ofNullable(reservedTo), Optional.ofNullable(exclusiveToApplicationId), diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiHandler.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiHandler.java index 0b157e8635b..cef28045a8b 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiHandler.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/NodesV2ApiHandler.java @@ -302,6 +302,7 @@ public class NodesV2ApiHandler extends ThreadedHttpRequestHandler { flavorFromSlime(inspector), nodeTypeFromSlime(inspector.field("type"))) .cloudAccount(nodeRepository.zone().cloud().account()); + optionalString(inspector.field("extraId")).ifPresent(builder::extraId); optionalString(inspector.field("parentHostname")).ifPresent(builder::parentHostname); optionalString(inspector.field("modelName")).ifPresent(builder::modelName); optionalString(inspector.field("reservedTo")).map(TenantName::from).ifPresent(builder::reservedTo); |