diff options
author | Martin Polden <mpolden@mpolden.no> | 2021-04-09 13:49:25 +0200 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2021-04-09 13:49:25 +0200 |
commit | 0c41d67758af2310dfe326bcd242d32cb8d471f4 (patch) | |
tree | e375b50793aab06593d171d3a550000a4f0c1e29 /controller-api | |
parent | 995c6954f060747f0a361ecd9866fc475ab335b9 (diff) |
Add wantToRebuild field to client type
Diffstat (limited to 'controller-api')
3 files changed, 40 insertions, 8 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java index 8c1fc57f4b6..3c7b8274e05 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/Node.java @@ -56,6 +56,7 @@ public class Node { private final boolean retired; private final boolean wantToRetire; private final boolean wantToDeprovision; + private final boolean wantToRebuild; private final Optional<TenantName> reservedTo; private final Optional<ApplicationId> exclusiveTo; private final Map<String, JsonNode> reports; @@ -69,7 +70,7 @@ public class Node { Optional<Instant> currentFirmwareCheck, Optional<Instant> wantedFirmwareCheck, ServiceState serviceState, Optional<Instant> suspendedSince, long restartGeneration, long wantedRestartGeneration, long rebootGeneration, long wantedRebootGeneration, int cost, String flavor, String clusterId, ClusterType clusterType, boolean retired, boolean wantToRetire, boolean wantToDeprovision, - Optional<TenantName> reservedTo, Optional<ApplicationId> exclusiveTo, + boolean wantToRebuild, Optional<TenantName> reservedTo, Optional<ApplicationId> exclusiveTo, DockerImage wantedDockerImage, DockerImage currentDockerImage, Map<String, JsonNode> reports, List<NodeHistory> history, Set<String> additionalIpAddresses, String openStackId, Optional<String> switchHostname) { this.hostname = hostname; @@ -101,6 +102,7 @@ public class Node { this.exclusiveTo = exclusiveTo; this.wantedDockerImage = wantedDockerImage; this.currentDockerImage = currentDockerImage; + this.wantToRebuild = wantToRebuild; this.reports = reports; this.history = history; this.openStackId = openStackId; @@ -214,6 +216,10 @@ public class Node { return wantToDeprovision; } + public boolean wantToRebuild() { + return wantToRebuild; + } + public Optional<TenantName> reservedTo() { return reservedTo; } public Optional<ApplicationId> exclusiveTo() { return exclusiveTo; } @@ -311,6 +317,7 @@ public class Node { private boolean retired; private boolean wantToRetire; private boolean wantToDeprovision; + private boolean wantToRebuild; private Optional<TenantName> reservedTo = Optional.empty(); private Optional<ApplicationId> exclusiveTo = Optional.empty(); private Map<String, JsonNode> reports = new HashMap<>(); @@ -349,6 +356,7 @@ public class Node { this.retired = node.retired; this.wantToRetire = node.wantToRetire; this.wantToDeprovision = node.wantToDeprovision; + this.wantToRebuild = node.wantToRebuild; this.reservedTo = node.reservedTo; this.exclusiveTo = node.exclusiveTo; this.reports = node.reports; @@ -493,6 +501,11 @@ public class Node { return this; } + public Builder wantToRebuild(boolean wantToRebuild) { + this.wantToRebuild = wantToRebuild; + return this; + } + public Builder reservedTo(TenantName tenant) { this.reservedTo = Optional.of(tenant); return this; @@ -527,7 +540,7 @@ public class Node { return new Node(hostname, parentHostname, state, type, resources, owner, currentVersion, wantedVersion, currentOsVersion, wantedOsVersion, currentFirmwareCheck, wantedFirmwareCheck, serviceState, suspendedSince, restartGeneration, wantedRestartGeneration, rebootGeneration, wantedRebootGeneration, - cost, flavor, clusterId, clusterType, retired, wantToRetire, wantToDeprovision, reservedTo, exclusiveTo, + cost, flavor, clusterId, clusterType, retired, wantToRetire, wantToDeprovision, wantToRebuild, reservedTo, exclusiveTo, wantedDockerImage, currentDockerImage, reports, history, additionalIpAddresses, openStackId, switchHostname); } diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepository.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepository.java index 7d454b2134f..72592e16bfd 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepository.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/NodeRepository.java @@ -148,7 +148,7 @@ public interface NodeRepository { Optional.ofNullable(node.getMembership()).map(NodeMembership::getRetired).orElse(false), node.getWantToRetire(), node.getWantToDeprovision(), - Optional.ofNullable(node.getReservedTo()).map(TenantName::from), + node.getWantToRebuild(), Optional.ofNullable(node.getReservedTo()).map(TenantName::from), Optional.ofNullable(node.getExclusiveTo()).map(ApplicationId::fromSerializedForm), dockerImageFrom(node.getWantedDockerImage()), dockerImageFrom(node.getCurrentDockerImage()), diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepositoryNode.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepositoryNode.java index 8b027cb229a..80d710eda2b 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepositoryNode.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/NodeRepositoryNode.java @@ -12,6 +12,11 @@ import java.util.List; import java.util.Map; import java.util.Set; +/** + * The wire format of a node retrieved from the node repository. + * + * @author bjorncs + */ @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) public class NodeRepositoryNode { @@ -78,6 +83,8 @@ public class NodeRepositoryNode { private Boolean wantToRetire; @JsonProperty("wantToDeprovision") private Boolean wantToDeprovision; + @JsonProperty("wantToRebuild") + private Boolean wantToRebuild; @JsonProperty("cost") private Integer cost; @JsonProperty("history") @@ -303,6 +310,10 @@ public class NodeRepositoryNode { public Boolean getWantToDeprovision() { return wantToDeprovision; } + public Boolean getWantToRebuild() { + return wantToRebuild; + } + public void setWantToRetire(Boolean wantToRetire) { this.wantToRetire = wantToRetire; } @@ -311,6 +322,10 @@ public class NodeRepositoryNode { this.wantToDeprovision = wantToDeprovision; } + public void setWantToRebuild(Boolean wantToRebuild) { + this.wantToRebuild = wantToRebuild; + } + public Integer getCost() { return cost; } @@ -442,6 +457,8 @@ public class NodeRepositoryNode { ", wantedVespaVersion='" + wantedVespaVersion + '\'' + ", currentOsVersion='" + currentOsVersion + '\'' + ", wantedOsVersion='" + wantedOsVersion + '\'' + + ", currentFirmwareCheck=" + currentFirmwareCheck + + ", wantedFirmwareCheck=" + wantedFirmwareCheck + ", failCount=" + failCount + ", environment=" + environment + ", type=" + type + @@ -450,14 +467,16 @@ public class NodeRepositoryNode { ", parentHostname='" + parentHostname + '\'' + ", wantToRetire=" + wantToRetire + ", wantToDeprovision=" + wantToDeprovision + + ", wantToRebuild=" + wantToRebuild + ", cost=" + cost + ", history=" + history + - ", orchestratorStatus=" + orchestratorStatus + + ", orchestratorStatus='" + orchestratorStatus + '\'' + + ", suspendedSinceMillis=" + suspendedSinceMillis + ", reports=" + reports + - ", modelName=" + modelName + - ", reservedTo=" + reservedTo + - ", exclusiveTo=" + exclusiveTo + - ", switchHostname=" + switchHostname + + ", modelName='" + modelName + '\'' + + ", reservedTo='" + reservedTo + '\'' + + ", exclusiveTo='" + exclusiveTo + '\'' + + ", switchHostname='" + switchHostname + '\'' + '}'; } |