diff options
Diffstat (limited to 'node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodePatcher.java')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodePatcher.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodePatcher.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodePatcher.java index 10514b62bc1..2beabcd8e8f 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodePatcher.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodePatcher.java @@ -30,7 +30,8 @@ import java.util.stream.Collectors; */ public class NodePatcher { - public static final String HARDWARE_FAILURE_TYPE = "hardwareFailureDescription"; + public static final String HARDWARE_FAILURE_TYPE = "hardwareFailureType"; + public static final String HARDWARE_FAILURE_DESCRIPTION = "hardwareFailureDescription"; private final NodeFlavors nodeFlavors; private final Inspector inspector; private final NodeRepository nodeRepository; @@ -78,9 +79,15 @@ public class NodePatcher { List<Node> children = nodeRepository.getChildNodes(node.hostname()); boolean modified = false; + // TODO: Remove when all clients have switched to hardwareFailureDescription if (inspector.field(HARDWARE_FAILURE_TYPE).valid()) { - Optional<String> hardwareFailure = inspector.type().equals(Type.NIX) ? - Optional.empty() : Optional.of(inspector.field(HARDWARE_FAILURE_TYPE).asString()); + Optional<String> hardwareFailure = asOptionalString(inspector.field(HARDWARE_FAILURE_TYPE)); + modified = true; + children = children.stream() + .map(node -> node.with(node.status().withHardwareFailureDescription(hardwareFailure))) + .collect(Collectors.toList()); + } else if (inspector.field(HARDWARE_FAILURE_DESCRIPTION).valid()) { + Optional<String> hardwareFailure = asOptionalString(inspector.field(HARDWARE_FAILURE_DESCRIPTION)); modified = true; children = children.stream() .map(node -> node.with(node.status().withHardwareFailureDescription(hardwareFailure))) @@ -113,6 +120,7 @@ public class NodePatcher { return node.with(node.status().setFailCount(asLong(value).intValue())); case "flavor" : return node.with(nodeFlavors.getFlavorOrThrow(asString(value))); + case HARDWARE_FAILURE_DESCRIPTION: case HARDWARE_FAILURE_TYPE: return node.with(node.status().withHardwareFailureDescription(asOptionalString(value))); case "parentHostname" : |