From b2bbdd552790c5477aa9845a80d4c3c31c860f20 Mon Sep 17 00:00:00 2001 From: Valerij Fredriksen Date: Mon, 23 Apr 2018 15:45:49 +0200 Subject: Use NodeSpec methods --- .../DefaultContainerEnvironmentResolver.java | 2 +- .../configserver/noderepository/NodeSpec.java | 112 +++++++++++---------- .../node/admin/docker/DockerOperationsImpl.java | 16 +-- .../node/admin/logging/FilebeatConfigProvider.java | 12 +-- .../node/admin/maintenance/StorageMaintainer.java | 58 +++++------ .../hosted/node/admin/nodeadmin/NodeAdminImpl.java | 2 +- .../admin/nodeadmin/NodeAdminStateUpdaterImpl.java | 6 +- .../hosted/node/admin/nodeagent/NodeAgentImpl.java | 56 +++++------ .../noderepository/RealNodeRepositoryTest.java | 22 ++-- .../admin/integrationTests/DockerFailTest.java | 4 +- .../admin/integrationTests/MultiDockerTest.java | 10 +- .../node/admin/integrationTests/NodeRepoMock.java | 4 +- .../node/admin/integrationTests/NodeStateTest.java | 14 +-- .../node/admin/integrationTests/RebootTest.java | 4 +- .../node/admin/integrationTests/RestartTest.java | 4 +- .../admin/integrationTests/RunInContainerTest.java | 4 +- .../admin/logging/FilebeatConfigProviderTest.java | 8 +- .../admin/maintenance/StorageMaintainerTest.java | 4 +- .../nodeadmin/NodeAdminStateUpdaterImplTest.java | 6 +- .../node/admin/nodeagent/NodeAgentImplTest.java | 38 +++---- 20 files changed, 196 insertions(+), 190 deletions(-) diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/DefaultContainerEnvironmentResolver.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/DefaultContainerEnvironmentResolver.java index c60781e4877..38f57c9544a 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/DefaultContainerEnvironmentResolver.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/DefaultContainerEnvironmentResolver.java @@ -10,7 +10,7 @@ public class DefaultContainerEnvironmentResolver implements ContainerEnvironment public String createSettings(Environment environment, NodeSpec node) { return new ContainerEnvironmentSettings() - .set("nodeType", node.nodeType) + .set("nodeType", node.getNodeType()) .set("cloud", environment.getCloud()) .build(); } 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 291e4b4f8fb..cb4a95b7687 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 @@ -50,10 +50,10 @@ public class NodeSpec { final String hostname, final Optional wantedDockerImage, final Optional currentDockerImage, - final Node.State nodeState, + final Node.State state, final NodeType nodeType, - final String nodeFlavor, - final String nodeCanonicalFlavor, + final String flavor, + final String canonicalFlavor, final Optional wantedVespaVersion, final Optional vespaVersion, final Optional allowedToBeDown, @@ -70,27 +70,18 @@ public class NodeSpec { final Set ipAddresses, final Optional hardwareDivergence, final Optional parentHostname) { - Objects.requireNonNull(hostname); - Objects.requireNonNull(nodeState); - Objects.requireNonNull(nodeType); - Objects.requireNonNull(nodeFlavor); - Objects.requireNonNull(allowedToBeDown); - Objects.requireNonNull(owner); - Objects.requireNonNull(membership); - Objects.requireNonNull(ipAddresses); - - this.hostname = hostname; - this.wantedDockerImage = wantedDockerImage; - this.currentDockerImage = currentDockerImage; - this.nodeState = nodeState; - this.nodeType = nodeType; - this.nodeFlavor = nodeFlavor; - this.nodeCanonicalFlavor = nodeCanonicalFlavor; - this.wantedVespaVersion = wantedVespaVersion; - this.vespaVersion = vespaVersion; - this.allowedToBeDown = allowedToBeDown; - this.owner = owner; - this.membership = membership; + this.hostname = Objects.requireNonNull(hostname); + this.wantedDockerImage = Objects.requireNonNull(wantedDockerImage); + this.currentDockerImage = Objects.requireNonNull(currentDockerImage); + this.nodeState = Objects.requireNonNull(state); + this.nodeType = Objects.requireNonNull(nodeType); + this.nodeFlavor = Objects.requireNonNull(flavor); + this.nodeCanonicalFlavor = canonicalFlavor; + this.wantedVespaVersion = Objects.requireNonNull(wantedVespaVersion); + this.vespaVersion = Objects.requireNonNull(vespaVersion); + this.allowedToBeDown = Objects.requireNonNull(allowedToBeDown); + this.owner = Objects.requireNonNull(owner); + this.membership = Objects.requireNonNull(membership); this.wantedRestartGeneration = wantedRestartGeneration; this.currentRestartGeneration = currentRestartGeneration; this.wantedRebootGeneration = wantedRebootGeneration; @@ -99,16 +90,16 @@ public class NodeSpec { this.minMainMemoryAvailableGb = minMainMemoryAvailableGb; this.minDiskAvailableGb = minDiskAvailableGb; this.fastDisk = fastDisk; - this.ipAddresses = ipAddresses; - this.hardwareDivergence = hardwareDivergence; - this.parentHostname = parentHostname; + this.ipAddresses = Objects.requireNonNull(ipAddresses); + this.hardwareDivergence = Objects.requireNonNull(hardwareDivergence); + this.parentHostname = Objects.requireNonNull(parentHostname); } public String getHostname() { return hostname; } - public Node.State getNodeState() { + public Node.State getState() { return nodeState; } @@ -116,11 +107,11 @@ public class NodeSpec { return nodeType; } - public String getNodeFlavor() { + public String getFlavor() { return nodeFlavor; } - public String getNodeCanonicalFlavor() { + public String getCanonicalFlavor() { return nodeCanonicalFlavor; } @@ -262,10 +253,10 @@ public class NodeSpec { + " hostname=" + hostname + " wantedDockerImage=" + wantedDockerImage + " currentDockerImage=" + currentDockerImage - + " nodeState=" + nodeState + + " state=" + nodeState + " nodeType=" + nodeType - + " nodeFlavor=" + nodeFlavor - + " nodeCanonicalFlavor=" + nodeCanonicalFlavor + + " flavor=" + nodeFlavor + + " canonicalFlavor=" + nodeCanonicalFlavor + " wantedVespaVersion=" + wantedVespaVersion + " vespaVersion=" + vespaVersion + " allowedToBeDown=" + allowedToBeDown @@ -414,10 +405,10 @@ public class NodeSpec { private String hostname; private Optional wantedDockerImage = Optional.empty(); private Optional currentDockerImage = Optional.empty(); - private Node.State nodeState; + private Node.State state; private NodeType nodeType; - private String nodeFlavor; - private String nodeCanonicalFlavor; + private String flavor; + private String canonicalFlavor; private Optional wantedVespaVersion = Optional.empty(); private Optional vespaVersion = Optional.empty(); private Optional allowedToBeDown = Optional.empty(); @@ -439,10 +430,10 @@ public class NodeSpec { public Builder(NodeSpec node) { hostname(node.hostname); - nodeState(node.nodeState); + state(node.nodeState); nodeType(node.nodeType); - nodeFlavor(node.nodeFlavor); - nodeCanonicalFlavor(node.nodeCanonicalFlavor); + flavor(node.nodeFlavor); + canonicalFlavor(node.nodeCanonicalFlavor); minCpuCores(node.minCpuCores); minMainMemoryAvailableGb(node.minMainMemoryAvailableGb); minDiskAvailableGb(node.minDiskAvailableGb); @@ -479,22 +470,39 @@ public class NodeSpec { return this; } - public Builder nodeState(Node.State nodeState) { - this.nodeState = nodeState; + public Builder state(Node.State state) { + this.state = state; return this; } + public Builder nodeType(NodeType nodeType) { this.nodeType = nodeType; return this; } - public Builder nodeFlavor(String nodeFlavor) { - this.nodeFlavor = nodeFlavor; + public Builder flavor(String flavor) { + this.flavor = flavor; + return this; + } + + public Builder canonicalFlavor(String canonicalFlavor) { + this.canonicalFlavor = canonicalFlavor; return this; } + @Deprecated + public Builder nodeState(Node.State nodeState) { + this.state = nodeState; + return this; + } + @Deprecated + public Builder nodeFlavor(String nodeFlavor) { + this.flavor = nodeFlavor; + return this; + } + @Deprecated public Builder nodeCanonicalFlavor(String nodeCanonicalFlavor) { - this.nodeCanonicalFlavor = nodeCanonicalFlavor; + this.canonicalFlavor = nodeCanonicalFlavor; return this; } @@ -610,20 +618,20 @@ public class NodeSpec { return currentDockerImage; } - public Node.State getNodeState() { - return nodeState; + public Node.State getState() { + return state; } public NodeType getNodeType() { return nodeType; } - public String getNodeFlavor() { - return nodeFlavor; + public String getFlavor() { + return flavor; } - public String getNodeCanonicalFlavor() { - return nodeCanonicalFlavor; + public String getCanonicalFlavor() { + return canonicalFlavor; } public Optional getWantedVespaVersion() { @@ -691,8 +699,8 @@ public class NodeSpec { } public NodeSpec build() { - return new NodeSpec(hostname, wantedDockerImage, currentDockerImage, nodeState, nodeType, - nodeFlavor, nodeCanonicalFlavor, + return new NodeSpec(hostname, wantedDockerImage, currentDockerImage, state, nodeType, + flavor, canonicalFlavor, wantedVespaVersion, vespaVersion, allowedToBeDown, owner, membership, wantedRestartGeneration, currentRestartGeneration, wantedRebootGeneration, currentRebootGeneration, diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java index 6754ca14aeb..17b5061c594 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java @@ -66,15 +66,15 @@ public class DockerOperationsImpl implements DockerOperations { PrefixLogger logger = PrefixLogger.getNodeAgentLogger(DockerOperationsImpl.class, containerName); logger.info("Creating container " + containerName); try { - InetAddress nodeInetAddress = environment.getInetAddressForHost(node.hostname); + InetAddress nodeInetAddress = environment.getInetAddressForHost(node.getHostname()); String configServers = String.join(",", environment.getConfigServerHostNames()); Docker.CreateContainerCommand command = docker.createContainerCommand( - node.wantedDockerImage.get(), - ContainerResources.from(node.minCpuCores, node.minMainMemoryAvailableGb), + node.getWantedDockerImage().get(), + ContainerResources.from(node.getMinCpuCores(), node.getMinMainMemoryAvailableGb()), containerName, - node.hostname) + node.getHostname()) .withManagedBy(MANAGER_NAME) .withEnvironment("VESPA_CONFIGSERVERS", configServers) .withEnvironment("CONTAINER_ENVIRONMENT_SETTINGS", @@ -100,14 +100,14 @@ public class DockerOperationsImpl implements DockerOperations { command.withVolume("/etc/hosts", "/etc/hosts"); // TODO This is probably not necessary - review later } else { // IPv6 - Assume always valid - Inet6Address ipV6Address = this.retriever.getIPv6Address(node.hostname).orElseThrow( + Inet6Address ipV6Address = this.retriever.getIPv6Address(node.getHostname()).orElseThrow( () -> new RuntimeException("Unable to find a valid IPv6 address. Missing an AAAA DNS entry?")); InetAddress ipV6Prefix = InetAddress.getByName(IPV6_NPT_PREFIX); InetAddress ipV6Local = IPAddresses.prefixTranslate(ipV6Address, ipV6Prefix, 8); command.withIpAddress(ipV6Local); // IPv4 - Only present for some containers - Optional ipV4Address = this.retriever.getIPv4Address(node.hostname); + Optional ipV4Address = this.retriever.getIPv4Address(node.getHostname()); if (ipV4Address.isPresent()) { InetAddress ipV4Prefix = InetAddress.getByName(IPV4_NPT_PREFIX); InetAddress ipV4Local = IPAddresses.prefixTranslate(ipV4Address.get(), ipV4Prefix, 2); @@ -123,7 +123,7 @@ public class DockerOperationsImpl implements DockerOperations { } // TODO: Enforce disk constraints - long minMainMemoryAvailableMb = (long) (node.minMainMemoryAvailableGb * 1024); + long minMainMemoryAvailableMb = (long) (node.getMinMainMemoryAvailableGb() * 1024); if (minMainMemoryAvailableMb > 0) { // VESPA_TOTAL_MEMORY_MB is used to make any jdisc container think the machine // only has this much physical memory (overrides total memory reported by `free -m`). @@ -144,7 +144,7 @@ public class DockerOperationsImpl implements DockerOperations { PrefixLogger logger = PrefixLogger.getNodeAgentLogger(DockerOperationsImpl.class, containerName); logger.info("Starting container " + containerName); try { - InetAddress nodeInetAddress = environment.getInetAddressForHost(node.hostname); + InetAddress nodeInetAddress = environment.getInetAddressForHost(node.getHostname()); boolean isIPv6 = nodeInetAddress instanceof Inet6Address; if (isIPv6) { diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProvider.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProvider.java index 743faa15e09..dd052e992f7 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProvider.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProvider.java @@ -12,8 +12,6 @@ import java.util.stream.Collectors; */ public class FilebeatConfigProvider { - private static final String TEMPLATE = "filebeat.yml.template"; - private static final String TENANT_FIELD = "%%TENANT%%"; private static final String APPLICATION_FIELD = "%%APPLICATION%%"; private static final String INSTANCE_FIELD = "%%INSTANCE%%"; @@ -34,10 +32,10 @@ public class FilebeatConfigProvider { public Optional getConfig(NodeSpec node) { - if (environment.getLogstashNodes().size() == 0 || !node.owner.isPresent()) { + if (environment.getLogstashNodes().size() == 0 || !node.getOwner().isPresent()) { return Optional.empty(); } - NodeSpec.Owner owner = node.owner.get(); + NodeSpec.Owner owner = node.getOwner().get(); int spoolSize = environment.getLogstashNodes().size() * logstashWorkers * logstashBulkMaxSize; String logstashNodeString = environment.getLogstashNodes().stream() .map(this::addQuotes) @@ -49,9 +47,9 @@ public class FilebeatConfigProvider { .replaceAll(LOGSTASH_HOSTS_FIELD, logstashNodeString) .replaceAll(LOGSTASH_WORKERS_FIELD, Integer.toString(logstashWorkers)) .replaceAll(LOGSTASH_BULK_MAX_SIZE_FIELD, Integer.toString(logstashBulkMaxSize)) - .replaceAll(TENANT_FIELD, owner.tenant) - .replaceAll(APPLICATION_FIELD, owner.application) - .replaceAll(INSTANCE_FIELD, owner.instance)); + .replaceAll(TENANT_FIELD, owner.getTenant()) + .replaceAll(APPLICATION_FIELD, owner.getApplication()) + .replaceAll(INSTANCE_FIELD, owner.getInstance())); } private String addQuotes(String logstashNode) { diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java index 77010c8b1b3..b19a424bd82 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainer.java @@ -77,21 +77,21 @@ public class StorageMaintainer { SecretAgentScheduleMaker hostLifeSchedule = new SecretAgentScheduleMaker("host-life", 60, hostLifeCheckPath) .withTag("namespace", "Vespa") .withTag("role", "tenants") - .withTag("flavor", node.nodeFlavor) - .withTag("canonicalFlavor", node.nodeCanonicalFlavor) - .withTag("state", node.nodeState.toString()) + .withTag("flavor", node.getFlavor()) + .withTag("canonicalFlavor", node.getCanonicalFlavor()) + .withTag("state", node.getState().toString()) .withTag("zone", environment.getZone()) .withTag("parentHostname", environment.getParentHostHostname()); - node.owner.ifPresent(owner -> hostLifeSchedule - .withTag("tenantName", owner.tenant) - .withTag("app", owner.application + "." + owner.instance) - .withTag("applicationName", owner.application) - .withTag("instanceName", owner.instance) - .withTag("applicationId", owner.tenant + "." + owner.application + "." + owner.instance)); - node.membership.ifPresent(membership -> hostLifeSchedule - .withTag("clustertype", membership.clusterType) - .withTag("clusterid", membership.clusterId)); - node.vespaVersion.ifPresent(version -> hostLifeSchedule.withTag("vespaVersion", version)); + node.getOwner().ifPresent(owner -> hostLifeSchedule + .withTag("tenantName", owner.getTenant()) + .withTag("app", owner.getApplication() + "." + owner.getInstance()) + .withTag("applicationName", owner.getApplication()) + .withTag("instanceName", owner.getInstance()) + .withTag("applicationId", owner.getTenant() + "." + owner.getApplication() + "." + owner.getInstance())); + node.getMembership().ifPresent(membership -> hostLifeSchedule + .withTag("clustertype", membership.getClusterType()) + .withTag("clusterid", membership.getClusterId())); + node.getVespaVersion().ifPresent(version -> hostLifeSchedule.withTag("vespaVersion", version)); try { vespaSchedule.writeTo(yamasAgentFolder); @@ -234,19 +234,19 @@ public class StorageMaintainer { } Map attributes = new HashMap<>(); - attributes.put("hostname", node.hostname); + attributes.put("hostname", node.getHostname()); attributes.put("parent_hostname", environment.getParentHostHostname()); attributes.put("region", environment.getRegion()); attributes.put("environment", environment.getEnvironment()); - attributes.put("flavor", node.nodeFlavor); + attributes.put("flavor", node.getFlavor()); attributes.put("kernel_version", System.getProperty("os.version")); - node.currentDockerImage.ifPresent(image -> attributes.put("docker_image", image.asString())); - node.vespaVersion.ifPresent(version -> attributes.put("vespa_version", version)); - node.owner.ifPresent(owner -> { - attributes.put("tenant", owner.tenant); - attributes.put("application", owner.application); - attributes.put("instance", owner.instance); + node.getCurrentDockerImage().ifPresent(image -> attributes.put("docker_image", image.asString())); + node.getVespaVersion().ifPresent(version -> attributes.put("vespa_version", version)); + node.getOwner().ifPresent(owner -> { + attributes.put("tenant", owner.getTenant()); + attributes.put("application", owner.getApplication()); + attributes.put("instance", owner.getInstance()); }); maintainerExecutor.addJob("handle-core-dumps") @@ -322,16 +322,16 @@ public class StorageMaintainer { */ public String getHardwareDivergence(NodeSpec node) { List arguments = new ArrayList<>(Arrays.asList("specification", - "--disk", Double.toString(node.minDiskAvailableGb), - "--memory", Double.toString(node.minMainMemoryAvailableGb), - "--cpu_cores", Double.toString(node.minCpuCores), - "--is_ssd", Boolean.toString(node.fastDisk), - "--ips", String.join(",", node.ipAddresses))); + "--disk", Double.toString(node.getMinDiskAvailableGb()), + "--memory", Double.toString(node.getMinMainMemoryAvailableGb()), + "--cpu_cores", Double.toString(node.getMinCpuCores()), + "--is_ssd", Boolean.toString(node.isFastDisk()), + "--ips", String.join(",", node.getIpAddresses()))); - if (node.hardwareDivergence.isPresent()) { + node.getHardwareDivergence().ifPresent(hardwareDivergence -> { arguments.add("--divergence"); - arguments.add(node.hardwareDivergence.get()); - } + arguments.add(hardwareDivergence); + }); return executeMaintainer("com.yahoo.vespa.hosted.node.verification.Main", arguments.toArray(new String[0])); } diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java index a844eda8476..2e01f57f93b 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java @@ -83,7 +83,7 @@ public class NodeAdminImpl implements NodeAdmin { public void refreshContainersToRun(final List containersToRun) { final List existingContainerNames = dockerOperations.listAllManagedContainers(); final List containersToRunHostnames = containersToRun.stream() - .map(container -> container.hostname) + .map(NodeSpec::getHostname) .collect(Collectors.toList()); storageMaintainer.cleanNodeAdmin(); diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImpl.java index b91fc1b4df9..44bd93b8d1d 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImpl.java @@ -134,7 +134,7 @@ public class NodeAdminStateUpdaterImpl implements NodeAdminStateUpdater { String hardwareDivergence = maintainer.getHardwareDivergence(node); // Only update hardware divergence if there is a change. - if (!node.hardwareDivergence.orElse("null").equals(hardwareDivergence)) { + if (!node.getHardwareDivergence().orElse("null").equals(hardwareDivergence)) { NodeAttributes nodeAttributes = new NodeAttributes().withHardwareDivergence(hardwareDivergence); nodeRepository.updateNodeAttributes(dockerHostHostName, nodeAttributes); } @@ -281,8 +281,8 @@ public class NodeAdminStateUpdaterImpl implements NodeAdminStateUpdater { private List getNodesInActiveState() { return nodeRepository.getNodes(dockerHostHostName) .stream() - .filter(node -> node.nodeState == Node.State.active) - .map(node -> node.hostname) + .filter(node -> node.getState() == Node.State.active) + .map(NodeSpec::getHostname) .collect(Collectors.toList()); } diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java index ac8607993f7..8dcb17da5f5 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java @@ -181,7 +181,7 @@ public class NodeAgentImpl implements NodeAgent { synchronized (debugMessages) { debug.put("history", new LinkedList<>(debugMessages)); } - debug.put("nodeRepoState", lastNode.nodeState.name()); + debug.put("nodeRepoState", lastNode.getState().name()); return debug; } @@ -245,16 +245,16 @@ public class NodeAgentImpl implements NodeAgent { private void updateNodeRepoWithCurrentAttributes(final NodeSpec node) { final NodeAttributes currentNodeAttributes = new NodeAttributes() - .withRestartGeneration(node.currentRestartGeneration.orElse(null)) - .withRebootGeneration(node.currentRebootGeneration) - .withDockerImage(node.currentDockerImage.orElse(new DockerImage(""))); + .withRestartGeneration(node.getCurrentRestartGeneration().orElse(null)) + .withRebootGeneration(node.getCurrentRebootGeneration()) + .withDockerImage(node.getCurrentDockerImage().orElse(new DockerImage(""))); final NodeAttributes wantedNodeAttributes = new NodeAttributes() - .withRestartGeneration(node.wantedRestartGeneration.orElse(null)) + .withRestartGeneration(node.getWantedRestartGeneration().orElse(null)) // update reboot gen with wanted gen if set, we ignore reboot for Docker nodes but // want the two to be equal in node repo - .withRebootGeneration(node.wantedRebootGeneration) - .withDockerImage(node.wantedDockerImage.filter(n -> containerState == UNKNOWN).orElse(new DockerImage(""))); + .withRebootGeneration(node.getWantedRebootGeneration()) + .withDockerImage(node.getWantedDockerImage().filter(n -> containerState == UNKNOWN).orElse(new DockerImage(""))); publishStateToNodeRepoIfChanged(currentNodeAttributes, wantedNodeAttributes); } @@ -292,18 +292,18 @@ public class NodeAgentImpl implements NodeAgent { } private Optional shouldRestartServices(NodeSpec node) { - if (!node.wantedRestartGeneration.isPresent()) return Optional.empty(); + if (!node.getWantedRestartGeneration().isPresent()) return Optional.empty(); - if (!node.currentRestartGeneration.isPresent() || - node.currentRestartGeneration.get() < node.wantedRestartGeneration.get()) { + if (!node.getCurrentRestartGeneration().isPresent() || + node.getCurrentRestartGeneration().get() < node.getWantedRestartGeneration().get()) { return Optional.of("Restart requested - wanted restart generation has been bumped: " - + node.currentRestartGeneration.get() + " -> " + node.wantedRestartGeneration.get()); + + node.getCurrentRestartGeneration().get() + " -> " + node.getWantedRestartGeneration().get()); } return Optional.empty(); } private void restartServices(NodeSpec node, Container existingContainer) { - if (existingContainer.state.isRunning() && node.nodeState == Node.State.active) { + if (existingContainer.state.isRunning() && node.getState() == Node.State.active) { ContainerName containerName = existingContainer.name; logger.info("Restarting services for " + containerName); // Since we are restarting the services we need to suspend the node. @@ -320,20 +320,20 @@ public class NodeAgentImpl implements NodeAgent { } private Optional shouldRemoveContainer(NodeSpec node, Container existingContainer) { - final Node.State nodeState = node.nodeState; + final Node.State nodeState = node.getState(); if (nodeState == Node.State.dirty || nodeState == Node.State.provisioned) { return Optional.of("Node in state " + nodeState + ", container should no longer be running"); } - if (node.wantedDockerImage.isPresent() && !node.wantedDockerImage.get().equals(existingContainer.image)) { + if (node.getWantedDockerImage().isPresent() && !node.getWantedDockerImage().get().equals(existingContainer.image)) { return Optional.of("The node is supposed to run a new Docker image: " - + existingContainer + " -> " + node.wantedDockerImage.get()); + + existingContainer + " -> " + node.getWantedDockerImage().get()); } if (!existingContainer.state.isRunning()) { return Optional.of("Container no longer running"); } ContainerResources wantedContainerResources = ContainerResources.from( - node.minCpuCores, node.minMainMemoryAvailableGb); + node.getMinCpuCores(), node.getMinMainMemoryAvailableGb()); if (!wantedContainerResources.equals(existingContainer.resources)) { return Optional.of("Container should be running with different resource allocation, wanted: " + wantedContainerResources + ", actual: " + existingContainer.resources); @@ -349,7 +349,7 @@ public class NodeAgentImpl implements NodeAgent { logger.info("Will remove container " + existingContainer + ": " + removeReason.get()); if (existingContainer.state.isRunning()) { - if (node.nodeState == Node.State.active) { + if (node.getState() == Node.State.active) { orchestratorSuspendNode(); } @@ -370,10 +370,10 @@ public class NodeAgentImpl implements NodeAgent { private void scheduleDownLoadIfNeeded(NodeSpec node) { - if (node.currentDockerImage.equals(node.wantedDockerImage)) return; + if (node.getCurrentDockerImage().equals(node.getWantedDockerImage())) return; - if (dockerOperations.pullImageAsyncIfNeeded(node.wantedDockerImage.get())) { - imageBeingDownloaded = node.wantedDockerImage.get(); + if (dockerOperations.pullImageAsyncIfNeeded(node.getWantedDockerImage().get())) { + imageBeingDownloaded = node.getWantedDockerImage().get(); } else if (imageBeingDownloaded != null) { // Image was downloading, but now it's ready imageBeingDownloaded = null; } @@ -463,7 +463,7 @@ public class NodeAgentImpl implements NodeAgent { lastNode = node; } - switch (node.nodeState) { + switch (node.getState()) { case ready: case reserved: case parked: @@ -475,7 +475,7 @@ public class NodeAgentImpl implements NodeAgent { storageMaintainer.handleCoreDumpsForContainer(containerName, node, false); storageMaintainer.getDiskUsageFor(containerName) - .map(diskUsage -> (double) diskUsage / BYTES_IN_GB / node.minDiskAvailableGb) + .map(diskUsage -> (double) diskUsage / BYTES_IN_GB / node.getMinDiskAvailableGb()) .filter(diskUtil -> diskUtil >= 0.8) .ifPresent(diskUtil -> storageMaintainer.removeOldFilesFromNode(containerName)); @@ -519,14 +519,14 @@ public class NodeAgentImpl implements NodeAgent { break; case dirty: removeContainerIfNeededUpdateContainerState(node, container); - logger.info("State is " + node.nodeState + ", will delete application storage and mark node as ready"); + logger.info("State is " + node.getState() + ", will delete application storage and mark node as ready"); storageMaintainer.cleanupNodeStorage(containerName, node); updateNodeRepoWithCurrentAttributes(node); nodeRepository.setNodeState(hostname, Node.State.ready); expectNodeNotInNodeRepo = true; break; default: - throw new RuntimeException("UNKNOWN STATE " + node.nodeState.name()); + throw new RuntimeException("UNKNOWN STATE " + node.getState().name()); } } @@ -581,9 +581,9 @@ public class NodeAgentImpl implements NodeAgent { Dimensions.Builder dimensionsBuilder = new Dimensions.Builder() .add("host", hostname) .add("role", "tenants") - .add("state", node.nodeState.toString()) + .add("state", node.getState().toString()) .add("parentHostname", environment.getParentHostHostname()); - node.allowedToBeDown.ifPresent(allowed -> + node.getAllowedToBeDown().ifPresent(allowed -> dimensionsBuilder.add("orchestratorState", allowed ? "ALLOWED_TO_BE_DOWN" : "NO_REMARKS")); Dimensions dimensions = dimensionsBuilder.build(); @@ -596,13 +596,13 @@ public class NodeAgentImpl implements NodeAgent { final long memoryTotalBytes = ((Number) stats.getMemoryStats().get("limit")).longValue(); final long memoryTotalBytesUsage = ((Number) stats.getMemoryStats().get("usage")).longValue(); final long memoryTotalBytesCache = ((Number) ((Map) stats.getMemoryStats().get("stats")).get("cache")).longValue(); - final long diskTotalBytes = (long) (node.minDiskAvailableGb * BYTES_IN_GB); + final long diskTotalBytes = (long) (node.getMinDiskAvailableGb() * BYTES_IN_GB); final Optional diskTotalBytesUsed = storageMaintainer.getDiskUsageFor(containerName); lastCpuMetric.updateCpuDeltas(cpuSystemTotalTime, cpuContainerTotalTime, cpuContainerKernelTime); // Ratio of CPU cores allocated to this container to total number of CPU cores on this host - final double allocatedCpuRatio = node.minCpuCores / totalNumCpuCores; + final double allocatedCpuRatio = node.getMinCpuCores() / totalNumCpuCores; double cpuUsageRatioOfAllocated = lastCpuMetric.getCpuUsageRatio() / allocatedCpuRatio; double cpuKernelUsageRatioOfAllocated = lastCpuMetric.getCpuKernelUsageRatio() / allocatedCpuRatio; diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java index 2257fe5fac6..62a4b51e9d0 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepositoryTest.java @@ -107,14 +107,14 @@ public class RealNodeRepositoryTest { final List containersToRun = nodeRepositoryApi.getNodes(dockerHostHostname); assertThat(containersToRun.size(), is(1)); final NodeSpec node = containersToRun.get(0); - assertThat(node.hostname, is("host4.yahoo.com")); - assertThat(node.wantedDockerImage.get(), is(new DockerImage("docker-registry.domain.tld:8080/dist/vespa:6.42.0"))); - assertThat(node.nodeState, is(Node.State.active)); - assertThat(node.wantedRestartGeneration.get(), is(0L)); - assertThat(node.currentRestartGeneration.get(), is(0L)); - assertThat(node.minCpuCores, is(0.2)); - assertThat(node.minMainMemoryAvailableGb, is(0.5)); - assertThat(node.minDiskAvailableGb, is(100.0)); + assertThat(node.getHostname(), is("host4.yahoo.com")); + assertThat(node.getWantedDockerImage().get(), is(new DockerImage("docker-registry.domain.tld:8080/dist/vespa:6.42.0"))); + assertThat(node.getState(), is(Node.State.active)); + assertThat(node.getWantedRestartGeneration().get(), is(0L)); + assertThat(node.getCurrentRestartGeneration().get(), is(0L)); + assertThat(node.getMinCpuCores(), is(0.2)); + assertThat(node.getMinMainMemoryAvailableGb(), is(0.5)); + assertThat(node.getMinDiskAvailableGb(), is(100.0)); } @Test @@ -122,7 +122,7 @@ public class RealNodeRepositoryTest { String hostname = "host4.yahoo.com"; Optional node = nodeRepositoryApi.getNode(hostname); assertThat(node.isPresent(), is(true)); - assertThat(node.get().hostname, is(hostname)); + assertThat(node.get().getHostname(), is(hostname)); } @Test @@ -188,8 +188,8 @@ public class RealNodeRepositoryTest { NodeSpec hostSpecInNodeRepo = nodeRepositoryApi.getNode("host123.domain.tld") .orElseThrow(RuntimeException::new); - assertEquals(host.nodeFlavor, hostSpecInNodeRepo.nodeFlavor); - assertEquals(host.nodeType, hostSpecInNodeRepo.nodeType); + assertEquals(host.nodeFlavor, hostSpecInNodeRepo.getFlavor()); + assertEquals(host.nodeType, hostSpecInNodeRepo.getNodeType()); assertTrue(nodeRepositoryApi.getNode("host123-1.domain.tld").isPresent()); } diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerFailTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerFailTest.java index eb3945e7a37..a4de2e9ffe2 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerFailTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerFailTest.java @@ -19,9 +19,9 @@ public class DockerFailTest { NodeSpec nodeSpec = new NodeSpec.Builder() .hostname("host1.test.yahoo.com") .wantedDockerImage(new DockerImage("dockerImage")) - .nodeState(Node.State.active) + .state(Node.State.active) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .wantedRestartGeneration(1L) .currentRestartGeneration(1L) .minCpuCores(1) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/MultiDockerTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/MultiDockerTest.java index c4ecbcbedcc..5619fd1bab3 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/MultiDockerTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/MultiDockerTest.java @@ -22,15 +22,15 @@ public class MultiDockerTest { dockerTester.addNodeRepositoryNode( new NodeSpec.Builder(nodeSpec2) - .nodeState(Node.State.dirty) + .state(Node.State.dirty) .minCpuCores(1) .minMainMemoryAvailableGb(1) .minDiskAvailableGb(1) .build()); // Wait until it is marked ready - while (dockerTester.nodeRepositoryMock.getNode(nodeSpec2.hostname) - .filter(node -> node.nodeState != Node.State.ready).isPresent()) { + while (dockerTester.nodeRepositoryMock.getNode(nodeSpec2.getHostname()) + .filter(node -> node.getState() != Node.State.ready).isPresent()) { Thread.sleep(10); } @@ -67,9 +67,9 @@ public class MultiDockerTest { .hostname(hostName) .wantedDockerImage(dockerImage) .wantedVespaVersion("1.2.3") - .nodeState(Node.State.active) + .state(Node.State.active) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .wantedRestartGeneration(1L) .currentRestartGeneration(1L) .minCpuCores(1) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeRepoMock.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeRepoMock.java index 66e1592cfcb..13f1520e065 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeRepoMock.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeRepoMock.java @@ -68,14 +68,14 @@ public class NodeRepoMock implements NodeRepository { synchronized (monitor) { node.ifPresent(nrn -> updateNodeRepositoryNode(new NodeSpec.Builder(nrn) - .nodeState(nodeState) + .state(nodeState) .build())); callOrderVerifier.add("setNodeState " + hostName + " to " + nodeState); } } public void updateNodeRepositoryNode(NodeSpec nodeSpec) { - nodeRepositoryNodesByHostname.put(nodeSpec.hostname, nodeSpec); + nodeRepositoryNodesByHostname.put(nodeSpec.getHostname(), nodeSpec); } public int getNumberOfContainerSpecs() { diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeStateTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeStateTest.java index f905659fb0c..c50d8e4efa9 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeStateTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/NodeStateTest.java @@ -18,9 +18,9 @@ public class NodeStateTest { private final NodeSpec initialNodeSpec = new NodeSpec.Builder() .hostname("host1.test.yahoo.com") .wantedDockerImage(new DockerImage("dockerImage")) - .nodeState(Node.State.active) + .state(Node.State.active) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .wantedRestartGeneration(1L) .currentRestartGeneration(1L) .minCpuCores(1) @@ -48,15 +48,15 @@ public class NodeStateTest { setup(dockerTester); // Change node state to dirty dockerTester.addNodeRepositoryNode(new NodeSpec.Builder(initialNodeSpec) - .nodeState(Node.State.dirty) + .state(Node.State.dirty) .minCpuCores(1) .minMainMemoryAvailableGb(1) .minDiskAvailableGb(1) .build()); // Wait until it is marked ready - while (dockerTester.nodeRepositoryMock.getNode(initialNodeSpec.hostname) - .filter(node -> node.nodeState != Node.State.ready).isPresent()) { + while (dockerTester.nodeRepositoryMock.getNode(initialNodeSpec.getHostname()) + .filter(node -> node.getState() != Node.State.ready).isPresent()) { Thread.sleep(10); } @@ -78,7 +78,7 @@ public class NodeStateTest { // Change node state to inactive and change the wanted docker image dockerTester.addNodeRepositoryNode(new NodeSpec.Builder(initialNodeSpec) .wantedDockerImage(newDockerImage) - .nodeState(Node.State.inactive) + .state(Node.State.inactive) .minCpuCores(1) .minMainMemoryAvailableGb(1) .minDiskAvailableGb(1) @@ -93,7 +93,7 @@ public class NodeStateTest { // Change node state to active dockerTester.addNodeRepositoryNode(new NodeSpec.Builder(initialNodeSpec) .wantedDockerImage(newDockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .minCpuCores(1) .minMainMemoryAvailableGb(1) .minDiskAvailableGb(1) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RebootTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RebootTest.java index 4f7460ebc26..f8746bcc22a 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RebootTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RebootTest.java @@ -66,9 +66,9 @@ public class RebootTest { return new NodeSpec.Builder() .hostname("host1.test.yahoo.com") .wantedDockerImage(new DockerImage("dockerImage")) - .nodeState(Node.State.active) + .state(Node.State.active) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .vespaVersion("6.50.0") .wantedRestartGeneration(1L) .currentRestartGeneration(1L) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RestartTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RestartTest.java index 46bf6325ff5..d029d356d77 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RestartTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RestartTest.java @@ -47,11 +47,11 @@ public class RestartTest { private NodeSpec createNodeRepositoryNode(long wantedRestartGeneration, long currentRestartGeneration) { return new NodeSpec.Builder() .hostname("host1.test.yahoo.com") - .nodeState(Node.State.active) + .state(Node.State.active) .wantedDockerImage(new DockerImage("image:1.2.3")) .wantedVespaVersion("1.2.3") .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .wantedRestartGeneration(wantedRestartGeneration) .currentRestartGeneration(currentRestartGeneration) .minCpuCores(1) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RunInContainerTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RunInContainerTest.java index 13dbbf37ee9..978db51aa77 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RunInContainerTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/RunInContainerTest.java @@ -173,9 +173,9 @@ public class RunInContainerTest { Collections.singletonList(new NodeSpec.Builder() .hostname("host1.test.yahoo.com") .wantedDockerImage(new DockerImage("dockerImage")) - .nodeState(Node.State.active) + .state(Node.State.active) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .build())); doThrow(new OrchestratorException("Cannot suspend because...")).when(orchestratorMock) .suspend("localhost.test.yahoo.com", Arrays.asList("host1.test.yahoo.com", parentHostname)); diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProviderTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProviderTest.java index 8af9623d4bf..77c0a30ae18 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProviderTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProviderTest.java @@ -54,8 +54,8 @@ public class FilebeatConfigProviderTest { public void it_does_not_generate_config_for_nodes_wihout_owner() { FilebeatConfigProvider filebeatConfigProvider = new FilebeatConfigProvider(getEnvironment(logstashNodes)); NodeSpec node = new NodeSpec.Builder() - .nodeFlavor("flavor") - .nodeState(Node.State.active) + .flavor("flavor") + .state(Node.State.active) .nodeType(NodeType.tenant) .hostname("hostname") .minCpuCores(1) @@ -111,8 +111,8 @@ public class FilebeatConfigProviderTest { NodeSpec.Owner owner = new NodeSpec.Owner(tenant, application, instance); return new NodeSpec.Builder() .owner(owner) - .nodeFlavor("flavor") - .nodeState(Node.State.active) + .flavor("flavor") + .state(Node.State.active) .nodeType(NodeType.tenant) .hostname("hostname") .minCpuCores(1) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainerTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainerTest.java index fccd43b6213..5abdd0d5d01 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainerTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainerTest.java @@ -74,9 +74,9 @@ public class StorageMaintainerTest { ContainerName containerName = ContainerName.fromHostname(hostname); NodeSpec node = new NodeSpec.Builder() .hostname(hostname) - .nodeState(Node.State.ready) + .state(Node.State.ready) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .minCpuCores(1) .minMainMemoryAvailableGb(1) .minDiskAvailableGb(1) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImplTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImplTest.java index 37af58ab9d0..607dc080a90 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImplTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminStateUpdaterImplTest.java @@ -56,7 +56,7 @@ public class NodeAdminStateUpdaterImplTest { public void testStateConvergence() { mockNodeRepo(4); List activeHostnames = nodeRepository.getNodes(parentHostname).stream() - .map(node -> node.hostname) + .map(NodeSpec::getHostname) .collect(Collectors.toList()); List suspendHostnames = new ArrayList<>(activeHostnames); suspendHostnames.add(parentHostname); @@ -186,9 +186,9 @@ public class NodeAdminStateUpdaterImplTest { List containersToRun = IntStream.range(0, numberOfNodes) .mapToObj(i -> new NodeSpec.Builder() .hostname("host" + i + ".test.yahoo.com") - .nodeState(Node.State.active) + .state(Node.State.active) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .minCpuCores(1) .minMainMemoryAvailableGb(1) .minDiskAvailableGb(1) diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImplTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImplTest.java index 7285d6a424d..4ba030455f5 100644 --- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImplTest.java +++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImplTest.java @@ -96,7 +96,7 @@ public class NodeAgentImplTest { private final NodeSpec.Builder nodeBuilder = new NodeSpec.Builder() .hostname(hostName) .nodeType(NodeType.tenant) - .nodeFlavor("docker") + .flavor("docker") .minCpuCores(MIN_CPU_CORES) .minMainMemoryAvailableGb(MIN_MAIN_MEMORY_AVAILABLE_GB) .minDiskAvailableGb(MIN_DISK_AVAILABLE_GB); @@ -109,7 +109,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .vespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) @@ -141,7 +141,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .vespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) @@ -165,7 +165,7 @@ public class NodeAgentImplTest { final long rebootGeneration = 0; final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) .currentRestartGeneration(restartGeneration) @@ -207,7 +207,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(newDockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .vespaVersion(vespaVersion) .wantedRestartGeneration(wantedRestartGeneration) @@ -237,7 +237,7 @@ public class NodeAgentImplTest { NodeSpec.Builder specBuilder = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .vespaVersion(vespaVersion) .wantedRestartGeneration(wantedRestartGeneration) @@ -277,7 +277,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .vespaVersion(vespaVersion) .wantedRestartGeneration(wantedRestartGeneration) @@ -303,7 +303,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.failed) + .state(Node.State.failed) .wantedVespaVersion(vespaVersion) .vespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) @@ -326,7 +326,7 @@ public class NodeAgentImplTest { final long restartGeneration = 1; final long rebootGeneration = 0; final NodeSpec node = nodeBuilder - .nodeState(Node.State.ready) + .state(Node.State.ready) .wantedRestartGeneration(restartGeneration) .currentRestartGeneration(restartGeneration) .wantedRebootGeneration(rebootGeneration) @@ -357,7 +357,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.inactive) + .state(Node.State.inactive) .wantedVespaVersion(vespaVersion) .vespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) @@ -385,7 +385,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) - .nodeState(Node.State.reserved) + .state(Node.State.reserved) .wantedVespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) .currentRestartGeneration(restartGeneration) @@ -409,7 +409,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(nodeState) + .state(nodeState) .build(); NodeAgentImpl nodeAgent = makeNodeAgent(dockerImage, true); @@ -449,7 +449,7 @@ public class NodeAgentImplTest { public void provisionedNodeIsMarkedAsDirty() { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) - .nodeState(Node.State.provisioned) + .state(Node.State.provisioned) .build(); NodeAgentImpl nodeAgent = makeNodeAgent(null, false); @@ -464,7 +464,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .currentDockerImage(dockerImage) .wantedDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .vespaVersion(vespaVersion) .build(); @@ -488,7 +488,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .vespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) .currentRestartGeneration(restartGeneration) @@ -554,7 +554,7 @@ public class NodeAgentImplTest { final long rebootGeneration = 0; final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .wantedRestartGeneration(restartGeneration) .currentRestartGeneration(restartGeneration) @@ -612,7 +612,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .wantedDockerImage(dockerImage) .currentDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .vespaVersion(vespaVersion) .owner(owner) .membership(membership) @@ -659,7 +659,7 @@ public class NodeAgentImplTest { @Test public void testGetRelevantMetricsForReadyNode() { final NodeSpec node = nodeBuilder - .nodeState(Node.State.ready) + .state(Node.State.ready) .build(); NodeAgentImpl nodeAgent = makeNodeAgent(null, false); @@ -681,7 +681,7 @@ public class NodeAgentImplTest { final NodeSpec node = nodeBuilder .nodeType(NodeType.config) .wantedDockerImage(dockerImage) - .nodeState(Node.State.active) + .state(Node.State.active) .wantedVespaVersion(vespaVersion) .build(); -- cgit v1.2.3