summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-03-16 06:31:34 +0100
committerGitHub <noreply@github.com>2018-03-16 06:31:34 +0100
commit3febf0eac866e06842234927fde460a54d078333 (patch)
tree8d72acfa2a6547f036d47dbcb0d33eda8e48a49c
parentffb314bc36a5a909a1fcbead659497e61f0c5a5c (diff)
parent2cb387f0f71ec95579001818353ddc1327cacb90 (diff)
Merge pull request #5350 from vespa-engine/musum/add-parentHostname
Musum/add parent hostname
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/ContainerNodeSpec.java21
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java3
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/bindings/GetNodesResponse.java6
3 files changed, 24 insertions, 6 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/ContainerNodeSpec.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/ContainerNodeSpec.java
index 26e3c46f365..0537e52c14f 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/ContainerNodeSpec.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/ContainerNodeSpec.java
@@ -44,6 +44,7 @@ public class ContainerNodeSpec {
public final Set<String> ipAddresses;
public final Optional<String> hardwareDivergence;
+ public final Optional<String> parentHostname;
public ContainerNodeSpec(
final String hostname,
@@ -67,7 +68,8 @@ public class ContainerNodeSpec {
final Double minDiskAvailableGb,
final Boolean fastDisk,
final Set<String> ipAddresses,
- final Optional<String> hardwareDivergence) {
+ final Optional<String> hardwareDivergence,
+ final Optional<String> parentHostname) {
Objects.requireNonNull(hostname);
Objects.requireNonNull(nodeState);
Objects.requireNonNull(nodeType);
@@ -103,6 +105,7 @@ public class ContainerNodeSpec {
this.fastDisk = fastDisk;
this.ipAddresses = ipAddresses;
this.hardwareDivergence = hardwareDivergence;
+ this.parentHostname = parentHostname;
}
@Override
@@ -133,7 +136,8 @@ public class ContainerNodeSpec {
Objects.equals(minDiskAvailableGb, that.minDiskAvailableGb) &&
Objects.equals(fastDisk, that.fastDisk) &&
Objects.equals(ipAddresses, that.ipAddresses) &&
- Objects.equals(hardwareDivergence, that.hardwareDivergence);
+ Objects.equals(hardwareDivergence, that.hardwareDivergence) &&
+ Objects.equals(parentHostname, that.parentHostname);
}
@Override
@@ -160,7 +164,8 @@ public class ContainerNodeSpec {
minDiskAvailableGb,
fastDisk,
ipAddresses,
- hardwareDivergence);
+ hardwareDivergence,
+ parentHostname);
}
@Override
@@ -188,6 +193,7 @@ public class ContainerNodeSpec {
+ " fastDisk=" + fastDisk
+ " ipAddresses=" + ipAddresses
+ " hardwareDivergence=" + hardwareDivergence
+ + " parentHostname=" + parentHostname
+ " }";
}
@@ -308,6 +314,7 @@ public class ContainerNodeSpec {
private Boolean fastDisk = false;
private Set<String> ipAddresses = Collections.emptySet();
private Optional<String> hardwareDivergence = Optional.empty();
+ private Optional<String> parentHostname = Optional.empty();
public Builder() {}
@@ -334,6 +341,7 @@ public class ContainerNodeSpec {
nodeSpec.wantedRebootGeneration.ifPresent(this::wantedRebootGeneration);
nodeSpec.currentRebootGeneration.ifPresent(this::currentRebootGeneration);
nodeSpec.hardwareDivergence.ifPresent(this::hardwareDivergence);
+ nodeSpec.parentHostname.ifPresent(this::parentHostname);
}
public Builder hostname(String hostname) {
@@ -445,6 +453,11 @@ public class ContainerNodeSpec {
return this;
}
+ public Builder parentHostname(String parentHostname) {
+ this.parentHostname = Optional.of(parentHostname);
+ return this;
+ }
+
public ContainerNodeSpec build() {
return new ContainerNodeSpec(hostname, wantedDockerImage, currentDockerImage, nodeState, nodeType,
nodeFlavor, nodeCanonicalFlavor,
@@ -452,7 +465,7 @@ public class ContainerNodeSpec {
wantedRestartGeneration, currentRestartGeneration,
wantedRebootGeneration, currentRebootGeneration,
minCpuCores, minMainMemoryAvailableGb, minDiskAvailableGb,
- fastDisk, ipAddresses, hardwareDivergence);
+ fastDisk, ipAddresses, hardwareDivergence, parentHostname);
}
}
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java
index b84adb1bdbb..ad7ac55568c 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java
@@ -139,7 +139,8 @@ public class RealNodeRepository implements NodeRepository {
node.minDiskAvailableGb,
node.fastDisk,
node.ipAddresses,
- Optional.ofNullable(node.hardwareDivergence));
+ Optional.ofNullable(node.hardwareDivergence),
+ Optional.ofNullable(node.parentHostname));
}
@Override
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/bindings/GetNodesResponse.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/bindings/GetNodesResponse.java
index d1eda3c2d45..bdbb8af1d18 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/bindings/GetNodesResponse.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/bindings/GetNodesResponse.java
@@ -48,6 +48,7 @@ public class GetNodesResponse {
public final Boolean fastDisk;
public final Set<String> ipAddresses;
public final String hardwareDivergence;
+ public final String parentHostname;
@JsonCreator
public Node(@JsonProperty("id") String hostname,
@@ -71,7 +72,8 @@ public class GetNodesResponse {
@JsonProperty("minDiskAvailableGb") Double minDiskAvailableGb,
@JsonProperty("fastDisk") Boolean fastDisk,
@JsonProperty("ipAddresses") Set<String> ipAddresses,
- @JsonProperty("hardwareDivergence") String hardwareDivergence) {
+ @JsonProperty("hardwareDivergence") String hardwareDivergence,
+ @JsonProperty("parentHostname") String parentHostname) {
this.hostname = hostname;
this.wantedDockerImage = wantedDockerImage;
this.currentDockerImage = currentDockerImage;
@@ -94,6 +96,7 @@ public class GetNodesResponse {
this.fastDisk = fastDisk;
this.ipAddresses = ipAddresses;
this.hardwareDivergence = hardwareDivergence;
+ this.parentHostname = parentHostname;
}
public String toString() {
@@ -116,6 +119,7 @@ public class GetNodesResponse {
+ " minCpuCores = " + minCpuCores
+ " minMainMemoryAvailableGb = " + minMainMemoryAvailableGb
+ " minDiskAvailableGb = " + minDiskAvailableGb
+ + " parentHostname = " + parentHostname
+ " }";
}