aboutsummaryrefslogtreecommitdiffstats
path: root/node-admin
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@oath.com>2018-08-14 14:21:43 +0200
committerValerij Fredriksen <valerijf@oath.com>2018-08-14 14:21:43 +0200
commit47166746de3cd2516b1dc383802d1e160f20ee26 (patch)
treea7132e26d40e93963b82e7a3c9f47916507def48 /node-admin
parentdf4fbad1afed80eecd124781f048a6c2f2fe2475 (diff)
Add wantToDeprovision and hardwareFailureDescription to NodeSpec
Diffstat (limited to 'node-admin')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java56
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java2
2 files changed, 53 insertions, 5 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java
index 7c15bef32b4..f3ef79613c9 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java
@@ -33,6 +33,7 @@ public class NodeSpec {
private final long currentRebootGeneration;
private final Optional<Boolean> allowedToBeDown;
+ private final Optional<Boolean> wantToDeprovision;
private final Optional<Owner> owner;
private final Optional<Membership> membership;
@@ -44,6 +45,7 @@ public class NodeSpec {
private final Set<String> ipAddresses;
private final Optional<String> hardwareDivergence;
+ private final Optional<String> hardwareFailureDescription;
private final Optional<String> parentHostname;
public NodeSpec(
@@ -57,6 +59,7 @@ public class NodeSpec {
final Optional<String> wantedVespaVersion,
final Optional<String> vespaVersion,
final Optional<Boolean> allowedToBeDown,
+ final Optional<Boolean> wantToDeprovision,
final Optional<Owner> owner,
final Optional<Membership> membership,
final Optional<Long> wantedRestartGeneration,
@@ -69,6 +72,7 @@ public class NodeSpec {
final boolean fastDisk,
final Set<String> ipAddresses,
final Optional<String> hardwareDivergence,
+ final Optional<String> hardwareFailureDescription,
final Optional<String> parentHostname) {
this.hostname = Objects.requireNonNull(hostname);
this.wantedDockerImage = Objects.requireNonNull(wantedDockerImage);
@@ -80,6 +84,7 @@ public class NodeSpec {
this.wantedVespaVersion = Objects.requireNonNull(wantedVespaVersion);
this.vespaVersion = Objects.requireNonNull(vespaVersion);
this.allowedToBeDown = Objects.requireNonNull(allowedToBeDown);
+ this.wantToDeprovision = Objects.requireNonNull(wantToDeprovision);
this.owner = Objects.requireNonNull(owner);
this.membership = Objects.requireNonNull(membership);
this.wantedRestartGeneration = wantedRestartGeneration;
@@ -92,6 +97,7 @@ public class NodeSpec {
this.fastDisk = fastDisk;
this.ipAddresses = Objects.requireNonNull(ipAddresses);
this.hardwareDivergence = Objects.requireNonNull(hardwareDivergence);
+ this.hardwareFailureDescription = Objects.requireNonNull(hardwareFailureDescription);
this.parentHostname = Objects.requireNonNull(parentHostname);
}
@@ -151,6 +157,10 @@ public class NodeSpec {
return allowedToBeDown;
}
+ public Optional<Boolean> getWantToDeprovision() {
+ return wantToDeprovision;
+ }
+
public Optional<Owner> getOwner() {
return owner;
}
@@ -183,6 +193,10 @@ public class NodeSpec {
return hardwareDivergence;
}
+ public Optional<String> getHardwareFailureDescription() {
+ return hardwareFailureDescription;
+ }
+
public Optional<String> getParentHostname() {
return parentHostname;
}
@@ -204,6 +218,7 @@ public class NodeSpec {
Objects.equals(wantedVespaVersion, that.wantedVespaVersion) &&
Objects.equals(vespaVersion, that.vespaVersion) &&
Objects.equals(allowedToBeDown, that.allowedToBeDown) &&
+ Objects.equals(wantToDeprovision, that.wantToDeprovision) &&
Objects.equals(owner, that.owner) &&
Objects.equals(membership, that.membership) &&
Objects.equals(wantedRestartGeneration, that.wantedRestartGeneration) &&
@@ -216,6 +231,7 @@ public class NodeSpec {
Objects.equals(fastDisk, that.fastDisk) &&
Objects.equals(ipAddresses, that.ipAddresses) &&
Objects.equals(hardwareDivergence, that.hardwareDivergence) &&
+ Objects.equals(hardwareFailureDescription, that.hardwareFailureDescription) &&
Objects.equals(parentHostname, that.parentHostname);
}
@@ -232,6 +248,7 @@ public class NodeSpec {
wantedVespaVersion,
vespaVersion,
allowedToBeDown,
+ wantToDeprovision,
owner,
membership,
wantedRestartGeneration,
@@ -244,6 +261,7 @@ public class NodeSpec {
fastDisk,
ipAddresses,
hardwareDivergence,
+ hardwareFailureDescription,
parentHostname);
}
@@ -260,6 +278,7 @@ public class NodeSpec {
+ " wantedVespaVersion=" + wantedVespaVersion
+ " vespaVersion=" + vespaVersion
+ " allowedToBeDown=" + allowedToBeDown
+ + " wantToDeprovision=" + wantToDeprovision
+ " owner=" + owner
+ " membership=" + membership
+ " minCpuCores=" + minCpuCores
@@ -272,6 +291,7 @@ public class NodeSpec {
+ " fastDisk=" + fastDisk
+ " ipAddresses=" + ipAddresses
+ " hardwareDivergence=" + hardwareDivergence
+ + " hardwareFailureDescription=" + hardwareFailureDescription
+ " parentHostname=" + parentHostname
+ " }";
}
@@ -412,6 +432,7 @@ public class NodeSpec {
private Optional<String> wantedVespaVersion = Optional.empty();
private Optional<String> vespaVersion = Optional.empty();
private Optional<Boolean> allowedToBeDown = Optional.empty();
+ private Optional<Boolean> wantToDeprovision = Optional.empty();
private Optional<Owner> owner = Optional.empty();
private Optional<Membership> membership = Optional.empty();
private Optional<Long> wantedRestartGeneration = Optional.empty();
@@ -424,6 +445,7 @@ public class NodeSpec {
private boolean fastDisk = false;
private Set<String> ipAddresses = Collections.emptySet();
private Optional<String> hardwareDivergence = Optional.empty();
+ private Optional<String> hardwareFailureDescription = Optional.empty();
private Optional<String> parentHostname = Optional.empty();
public Builder() {}
@@ -447,11 +469,13 @@ public class NodeSpec {
node.wantedVespaVersion.ifPresent(this::wantedVespaVersion);
node.vespaVersion.ifPresent(this::vespaVersion);
node.allowedToBeDown.ifPresent(this::allowedToBeDown);
+ node.wantToDeprovision.ifPresent(this::wantToDeprovision);
node.owner.ifPresent(this::owner);
node.membership.ifPresent(this::membership);
node.wantedRestartGeneration.ifPresent(this::wantedRestartGeneration);
node.currentRestartGeneration.ifPresent(this::currentRestartGeneration);
node.hardwareDivergence.ifPresent(this::hardwareDivergence);
+ node.hardwareFailureDescription.ifPresent(this::hardwareFailureDescription);
node.parentHostname.ifPresent(this::parentHostname);
}
@@ -505,6 +529,11 @@ public class NodeSpec {
return this;
}
+ public Builder wantToDeprovision(boolean wantToDeprovision) {
+ this.wantToDeprovision = Optional.of(wantToDeprovision);
+ return this;
+ }
+
public Builder owner(Owner owner) {
this.owner = Optional.of(owner);
return this;
@@ -565,6 +594,11 @@ public class NodeSpec {
return this;
}
+ public Builder hardwareFailureDescription(String hardwareFailureDescription) {
+ this.hardwareFailureDescription = Optional.of(hardwareFailureDescription);
+ return this;
+ }
+
public Builder parentHostname(String parentHostname) {
this.parentHostname = Optional.of(parentHostname);
return this;
@@ -575,6 +609,8 @@ public class NodeSpec {
attributes.getHardwareDivergence().ifPresent(this::hardwareDivergence);
attributes.getRebootGeneration().ifPresent(this::currentRebootGeneration);
attributes.getRestartGeneration().ifPresent(this::currentRestartGeneration);
+ attributes.getHardwareFailureDescription().ifPresent(this::hardwareFailureDescription);
+ attributes.getWantToDeprovision().ifPresent(this::wantToDeprovision);
return this;
}
@@ -618,6 +654,10 @@ public class NodeSpec {
return allowedToBeDown;
}
+ public Optional<Boolean> getWantToDeprovision() {
+ return wantToDeprovision;
+ }
+
public Optional<Owner> getOwner() {
return owner;
}
@@ -666,6 +706,10 @@ public class NodeSpec {
return hardwareDivergence;
}
+ public Optional<String> getHardwareFailureDescription() {
+ return hardwareFailureDescription;
+ }
+
public Optional<String> getParentHostname() {
return parentHostname;
}
@@ -673,11 +717,13 @@ public class NodeSpec {
public NodeSpec build() {
return new NodeSpec(hostname, wantedDockerImage, currentDockerImage, state, nodeType,
flavor, canonicalFlavor,
- wantedVespaVersion, vespaVersion, allowedToBeDown, owner, membership,
- wantedRestartGeneration, currentRestartGeneration,
- wantedRebootGeneration, currentRebootGeneration,
- minCpuCores, minMainMemoryAvailableGb, minDiskAvailableGb,
- fastDisk, ipAddresses, hardwareDivergence, parentHostname);
+ wantedVespaVersion, vespaVersion, allowedToBeDown, wantToDeprovision,
+ owner, membership,
+ wantedRestartGeneration, currentRestartGeneration,
+ wantedRebootGeneration, currentRebootGeneration,
+ minCpuCores, minMainMemoryAvailableGb, minDiskAvailableGb,
+ fastDisk, ipAddresses, hardwareDivergence, hardwareFailureDescription,
+ 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 858209da18e..187ae156dc2 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
@@ -175,6 +175,7 @@ public class RealNodeRepository implements NodeRepository {
Optional.ofNullable(node.wantedVespaVersion),
Optional.ofNullable(node.vespaVersion),
Optional.ofNullable(node.allowedToBeDown),
+ Optional.ofNullable(node.wantToDeprovision),
Optional.ofNullable(owner),
Optional.ofNullable(membership),
Optional.ofNullable(node.restartGeneration),
@@ -187,6 +188,7 @@ public class RealNodeRepository implements NodeRepository {
node.fastDisk,
node.ipAddresses,
Optional.ofNullable(node.hardwareDivergence),
+ Optional.ofNullable(node.hardwareFailureDescription),
Optional.ofNullable(node.parentHostname));
}