diff options
author | Martin Polden <mpolden@mpolden.no> | 2021-07-19 11:25:48 +0200 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2021-07-19 11:25:48 +0200 |
commit | e5cdbc1cc713c4013776bf471b6242c6b6c7d5fd (patch) | |
tree | 302fc9bcc2649310cdb52ebab0b9944df779dbc6 /controller-server/src/test | |
parent | b4e04e695d8d72bc097328fe95e98782d84194af (diff) |
Replace list overloading with NodeFilter
Diffstat (limited to 'controller-server/src/test')
12 files changed, 51 insertions, 48 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java index 5d6f1965009..420d0be04ac 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/DeploymentContext.java @@ -20,6 +20,7 @@ import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.Instance; import com.yahoo.vespa.hosted.controller.api.identifiers.DeploymentId; import com.yahoo.vespa.hosted.controller.api.integration.configserver.ConfigServerException; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.api.integration.deployment.ApplicationVersion; import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobId; import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobType; @@ -192,7 +193,8 @@ public class DeploymentContext { for (var spec : application().deploymentSpec().instances()) for (JobType type : new DeploymentSteps(spec, tester.controller()::system).productionJobs()) assertTrue(tester.configServer().nodeRepository() - .list(type.zone(tester.controller().system()), applicationId.defaultInstance()).stream() // TODO jonmv: support more + .list(type.zone(tester.controller().system()), + NodeFilter.all().applications(applicationId.defaultInstance())).stream() // TODO jonmv: support more .allMatch(node -> node.currentVersion().equals(version))); assertFalse(instance().change().hasTargets()); @@ -543,7 +545,7 @@ public class DeploymentContext { assertTrue(jobs.run(id).get().hasEnded()); assertFalse(jobs.run(id).get().hasFailed()); assertEquals(job.type().isProduction(), instance().deployments().containsKey(zone)); - assertTrue(configServer().nodeRepository().list(zone, TesterId.of(id.application()).id()).isEmpty()); + assertTrue(configServer().nodeRepository().list(zone, NodeFilter.all().applications(TesterId.of(id.application()).id())).isEmpty()); } private JobId jobId(JobType type) { diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java index 5e79f1e4d12..d685c6a2354 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java @@ -20,6 +20,7 @@ import com.yahoo.vespa.hosted.controller.api.application.v4.model.configserverbi import com.yahoo.vespa.hosted.controller.api.integration.LogEntry; import com.yahoo.vespa.hosted.controller.api.integration.configserver.ConfigServerException; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobType; import com.yahoo.vespa.hosted.controller.api.integration.deployment.RunId; import com.yahoo.vespa.hosted.controller.api.integration.deployment.TesterCloud; @@ -194,7 +195,7 @@ public class InternalStepRunnerTest { assertEquals(succeeded, tester.jobs().last(app.instanceId(), JobType.stagingTest).get().stepStatuses().get(Step.installTester)); Node systemTestNode = tester.configServer().nodeRepository().list(JobType.systemTest.zone(system()), - app.instanceId()).iterator().next(); + NodeFilter.all().applications(app.instanceId())).iterator().next(); tester.clock().advance(InternalStepRunner.Timeouts.of(system()).noNodesDown().minus(Duration.ofSeconds(1))); tester.configServer().nodeRepository().putNodes(JobType.systemTest.zone(system()), Node.builder(systemTestNode) diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java index c66cc3710c9..e18542108c0 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/ConfigServerMock.java @@ -31,6 +31,7 @@ import com.yahoo.vespa.hosted.controller.api.integration.configserver.ContainerE import com.yahoo.vespa.hosted.controller.api.integration.configserver.LoadBalancer; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Log; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.api.integration.configserver.PrepareResponse; import com.yahoo.vespa.hosted.controller.api.integration.configserver.ProxyResponse; import com.yahoo.vespa.hosted.controller.api.integration.configserver.QuotaUsage; @@ -133,7 +134,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer new com.yahoo.vespa.hosted.controller.api.integration.configserver.Application(application, List.of(cluster))); - Node parent = nodeRepository().list(zone, SystemApplication.tenantHost.id()).stream().findAny() + Node parent = nodeRepository().list(zone, NodeFilter.all().applications(SystemApplication.tenantHost.id())).stream().findAny() .orElseThrow(() -> new IllegalStateException("No parent hosts in " + zone)); nodeRepository().putNodes(zone, Node.builder().hostname(hostFor(application, zone)) .state(Node.State.reserved) @@ -189,7 +190,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer /** Converge all services belonging to the given application */ public void convergeServices(ApplicationId application, ZoneId zone) { - List<Node> nodes = nodeRepository.list(zone, application); + List<Node> nodes = nodeRepository.list(zone, NodeFilter.all().applications(application)); serviceStatus.put(new DeploymentId(application, zone), new ServiceConvergence(application, zone, true, @@ -219,7 +220,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer /** Set version for an application in a given zone */ public void setVersion(Version version, ApplicationId application, ZoneId zone) { - setVersion(zone, nodeRepository.list(zone, application), version, false); + setVersion(zone, nodeRepository.list(zone, NodeFilter.all().applications(application)), version, false); } /** Set version for nodeCount number of nodes in application in a given zone */ @@ -229,7 +230,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer /** Set OS version for an application in a given zone */ public void setOsVersion(Version version, ApplicationId application, ZoneId zone) { - setVersion(zone, nodeRepository.list(zone, application), version, true); + setVersion(zone, nodeRepository.list(zone, NodeFilter.all().applications(application)), version, true); } /** Set OS version for an application in a given zone */ @@ -382,7 +383,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer applications.put(id, new Application(id.applicationId(), lastPrepareVersion, new ApplicationPackage(deployment.applicationPackage()))); ClusterSpec.Id cluster = ClusterSpec.Id.from("default"); - if (nodeRepository().list(id.zoneId(), id.applicationId()).isEmpty()) + if (nodeRepository().list(id.zoneId(), NodeFilter.all().applications(id.applicationId())).isEmpty()) provision(id.zoneId(), id.applicationId(), cluster); this.containerEndpoints.put( @@ -405,7 +406,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer return () -> { Application application = applications.get(id); application.activate(); - List<Node> nodes = nodeRepository.list(id.zoneId(), id.applicationId()); + List<Node> nodes = nodeRepository.list(id.zoneId(), NodeFilter.all().applications(id.applicationId())); for (Node node : nodes) { nodeRepository.putNodes(id.zoneId(), Node.builder(node) .state(Node.State.active) @@ -471,7 +472,7 @@ public class ConfigServerMock extends AbstractComponent implements ConfigServer public void deactivate(DeploymentId deployment) { ApplicationId applicationId = deployment.applicationId(); nodeRepository().removeNodes(deployment.zoneId(), - nodeRepository().list(deployment.zoneId(), applicationId)); + nodeRepository().list(deployment.zoneId(), NodeFilter.all().applications(applicationId))); if ( ! applications.containsKey(deployment)) return; diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/NodeRepositoryMock.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/NodeRepositoryMock.java index 8a9aa6b4b1b..543d89a2240 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/NodeRepositoryMock.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/integration/NodeRepositoryMock.java @@ -14,6 +14,7 @@ import com.yahoo.vespa.hosted.controller.api.integration.configserver.Applicatio import com.yahoo.vespa.hosted.controller.api.integration.configserver.ApplicationStats; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Load; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeRepoStats; import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeRepository; import com.yahoo.vespa.hosted.controller.api.integration.configserver.TargetVersions; @@ -75,23 +76,13 @@ public class NodeRepositoryMock implements NodeRepository { } @Override - public List<Node> list(ZoneId zone, boolean includeDeprovisioned) { + public List<Node> list(ZoneId zone, NodeFilter filter) { return nodeRepository.getOrDefault(zone, Map.of()).values().stream() - .filter(node -> includeDeprovisioned || node.state() != Node.State.deprovisioned) - .collect(Collectors.toList()); - } - - @Override - public List<Node> list(ZoneId zone, ApplicationId application) { - return nodeRepository.getOrDefault(zone, Map.of()).values().stream() - .filter(node -> node.owner().map(application::equals).orElse(false)) - .collect(Collectors.toList()); - } - - @Override - public List<Node> list(ZoneId zone, List<HostName> hostnames) { - return nodeRepository.getOrDefault(zone, Map.of()).values().stream() - .filter(node -> hostnames.contains(node.hostname())) + .filter(node -> filter.includeDeprovisioned() || node.state() != Node.State.deprovisioned) + .filter(node -> filter.applications().isEmpty() || + (node.owner().isPresent() && filter.applications().contains(node.owner().get()))) + .filter(node -> filter.hostnames().isEmpty() || filter.hostnames().contains(node.hostname())) + .filter(node -> filter.states().isEmpty() || filter.states().contains(node.state())) .collect(Collectors.toList()); } @@ -344,7 +335,7 @@ public class NodeRepositoryMock implements NodeRepository { if (hostname.isPresent()) { nodes = List.of(require(zone, hostname.get())); } else { - nodes = list(zone, false); + nodes = list(zone, NodeFilter.all()); } putNodes(zone, nodes.stream().map(patcher).collect(Collectors.toList())); } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/CloudEventTrackerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/CloudEventTrackerTest.java index 17852547a0b..919b8386b2c 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/CloudEventTrackerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/CloudEventTrackerTest.java @@ -8,6 +8,7 @@ import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.api.integration.aws.CloudEvent; import com.yahoo.vespa.hosted.controller.api.integration.aws.MockCloudEventFetcher; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.integration.ZoneApiMock; import org.junit.Test; @@ -128,7 +129,7 @@ public class CloudEventTrackerTest { } private Set<String> hostsNotDeprovisioning(ZoneId zoneId) { - return tester.configServer().nodeRepository().list(zoneId, false) + return tester.configServer().nodeRepository().list(zoneId, NodeFilter.all()) .stream() .filter(node -> !node.wantToDeprovision()) .map(node -> node.hostname().value()) diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostInfoUpdaterTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostInfoUpdaterTest.java index 56f8de494f0..bc17e53c0ca 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostInfoUpdaterTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostInfoUpdaterTest.java @@ -6,6 +6,7 @@ import com.yahoo.config.provision.NodeType; import com.yahoo.config.provision.zone.ZoneId; import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.api.integration.entity.NodeEntity; import org.junit.Test; @@ -108,7 +109,7 @@ public class HostInfoUpdaterTest { private static List<Node> allNodes(ControllerTester tester) { List<Node> nodes = new ArrayList<>(); for (var zone : tester.zoneRegistry().zones().controllerUpgraded().all().ids()) { - nodes.addAll(tester.serviceRegistry().configServer().nodeRepository().list(zone, false)); + nodes.addAll(tester.serviceRegistry().configServer().nodeRepository().list(zone, NodeFilter.all())); } return nodes; } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java index 3789777a8fc..a9046a8e060 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/MetricsReporterTest.java @@ -14,6 +14,7 @@ import com.yahoo.vespa.hosted.controller.Controller; import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.api.integration.billing.PlanId; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.application.ApplicationPackage; import com.yahoo.vespa.hosted.controller.application.Change; import com.yahoo.vespa.hosted.controller.application.SystemApplication; @@ -300,7 +301,7 @@ public class MetricsReporterTest { var version0 = Version.fromString("7.0"); tester.upgradeSystem(version0); reporter.maintain(); - var hosts = tester.configServer().nodeRepository().list(zone, SystemApplication.configServer.id()); + var hosts = tester.configServer().nodeRepository().list(zone, NodeFilter.all().applications(SystemApplication.configServer.id())); assertPlatformChangeDuration(Duration.ZERO, hosts); var targets = List.of(Version.fromString("7.1"), Version.fromString("7.2")); @@ -361,7 +362,7 @@ public class MetricsReporterTest { tester.configServer().setOsVersion(version0, SystemApplication.tenantHost.id(), zone); tester.configServer().setOsVersion(version0, SystemApplication.configServerHost.id(), zone); runAll(statusUpdater, reporter); - List<Node> hosts = tester.configServer().nodeRepository().list(zone, false); + List<Node> hosts = tester.configServer().nodeRepository().list(zone, NodeFilter.all()); assertOsChangeDuration(Duration.ZERO, hosts); var targets = List.of(Version.fromString("8.1"), Version.fromString("8.2")); @@ -382,10 +383,10 @@ public class MetricsReporterTest { // Nodes are told to upgrade, but do not suspend yet assertEquals("Wanted OS version is raised for all nodes", nextVersion, - tester.configServer().nodeRepository().list(zone, SystemApplication.tenantHost.id()).stream() + tester.configServer().nodeRepository().list(zone, NodeFilter.all().applications(SystemApplication.tenantHost.id())).stream() .map(Node::wantedOsVersion).min(Comparator.naturalOrder()).get()); assertTrue("No nodes are suspended", tester.controller().serviceRegistry().configServer() - .nodeRepository().list(zone, false).stream() + .nodeRepository().list(zone, NodeFilter.all()).stream() .noneMatch(node -> node.serviceState() == Node.ServiceState.allowedDown)); // Another 30 minutes pass @@ -536,9 +537,9 @@ public class MetricsReporterTest { } private List<Node> getNodes(ZoneId zone, List<Node> nodes, ControllerTester tester) { - return tester.configServer().nodeRepository().list(zone, nodes.stream() - .map(Node::hostname) - .collect(Collectors.toList())); + return tester.configServer().nodeRepository().list(zone, NodeFilter.all().hostnames(nodes.stream() + .map(Node::hostname) + .collect(Collectors.toSet()))); } private void updateNodes(List<Node> nodes, UnaryOperator<Node.Builder> builderOps, ZoneId zone, diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java index eca000ff969..ee4c39c2924 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/OsUpgraderTest.java @@ -8,6 +8,7 @@ import com.yahoo.config.provision.zone.ZoneApi; import com.yahoo.config.provision.zone.ZoneId; import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.application.SystemApplication; import com.yahoo.vespa.hosted.controller.integration.NodeRepositoryMock; import com.yahoo.vespa.hosted.controller.integration.ZoneApiMock; @@ -261,14 +262,14 @@ public class OsUpgraderTest { } private List<Node> nodesRequiredToUpgrade(ZoneApi zone, SystemApplication application) { - return nodeRepository().list(zone.getVirtualId(), application.id()) + return nodeRepository().list(zone.getVirtualId(), NodeFilter.all().applications(application.id())) .stream() .filter(OsUpgrader::canUpgrade) .collect(Collectors.toList()); } private void failNodeIn(ZoneApi zone, SystemApplication application) { - List<Node> nodes = nodeRepository().list(zone.getVirtualId(), application.id()); + List<Node> nodes = nodeRepository().list(zone.getVirtualId(), NodeFilter.all().applications(application.id())); if (nodes.isEmpty()) { throw new IllegalArgumentException("No nodes allocated to " + application.id()); } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/SystemUpgraderTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/SystemUpgraderTest.java index 8090765b5f9..7d6da68440e 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/SystemUpgraderTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/SystemUpgraderTest.java @@ -6,6 +6,7 @@ import com.yahoo.config.provision.zone.UpgradePolicy; import com.yahoo.config.provision.zone.ZoneApi; import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.application.SystemApplication; import com.yahoo.vespa.hosted.controller.integration.NodeRepositoryMock; import com.yahoo.vespa.hosted.controller.integration.ZoneApiMock; @@ -322,7 +323,7 @@ public class SystemUpgraderTest { } private void failNodeIn(ZoneApi zone, SystemApplication application) { - List<Node> nodes = nodeRepository().list(zone.getId(), application.id()); + List<Node> nodes = nodeRepository().list(zone.getId(), NodeFilter.all().applications(application.id())); if (nodes.isEmpty()) { throw new IllegalArgumentException("No nodes allocated to " + application.id()); } @@ -372,7 +373,7 @@ public class SystemUpgraderTest { } private List<Node> listNodes(ZoneApi zone, SystemApplication application) { - return nodeRepository().list(zone.getId(), application.id()).stream() + return nodeRepository().list(zone.getId(), NodeFilter.all().applications(application.id())).stream() .filter(SystemUpgrader::eligibleForUpgrade) .collect(Collectors.toList()); } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/VcmrMaintainerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/VcmrMaintainerTest.java index 1d66434ea42..a2da6e357b6 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/VcmrMaintainerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/VcmrMaintainerTest.java @@ -5,6 +5,7 @@ import com.yahoo.config.provision.NodeType; import com.yahoo.config.provision.zone.ZoneId; import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.api.integration.vcmr.ChangeRequest; import com.yahoo.vespa.hosted.controller.api.integration.vcmr.ChangeRequestSource; import com.yahoo.vespa.hosted.controller.api.integration.vcmr.HostAction; @@ -66,7 +67,7 @@ public class VcmrMaintainerTest { maintainer.maintain(); // Only the parked node is recycled, VCMR report is cleared - var nodeList = nodeRepo.list(zoneId, List.of(host1, host2)); + var nodeList = nodeRepo.list(zoneId, NodeFilter.all().hostnames(host1, host2)); assertEquals(Node.State.dirty, nodeList.get(0).state()); assertEquals(Node.State.failed, nodeList.get(1).state()); @@ -111,7 +112,7 @@ public class VcmrMaintainerTest { assertEquals(State.NONE, failedNodeAction.getState()); assertEquals(Status.IN_PROGRESS, writtenChangeRequest.getStatus()); - activeNode = nodeRepo.list(zoneId, List.of(activeNode.hostname())).get(0); + activeNode = nodeRepo.list(zoneId, NodeFilter.all().hostnames(activeNode.hostname())).get(0); assertTrue(activeNode.wantToRetire()); } @@ -168,7 +169,7 @@ public class VcmrMaintainerTest { var approvedChangeRequests = tester.serviceRegistry().changeRequestClient().getApprovedChangeRequests(); assertEquals(1, approvedChangeRequests.size()); - activeNode = nodeRepo.list(zoneId, List.of(host2)).get(0); + activeNode = nodeRepo.list(zoneId, NodeFilter.all().hostnames(host2)).get(0); var report = VcmrReport.fromReports(activeNode.reports()); var reportAdded = report.getVcmrs().stream() .filter(vcmr -> vcmr.getId().equals(changeRequestId)) @@ -190,11 +191,11 @@ public class VcmrMaintainerTest { var hostAction = writtenChangeRequest.getHostActionPlan().get(0); assertEquals(State.PENDING_RETIREMENT, hostAction.getState()); - parkedNode = nodeRepo.list(zoneId, List.of(parkedNode.hostname())).get(0); + parkedNode = nodeRepo.list(zoneId, NodeFilter.all().hostnames(parkedNode.hostname())).get(0); assertEquals(Node.State.dirty, parkedNode.state()); assertFalse(parkedNode.wantToRetire()); - retiringNode = nodeRepo.list(zoneId, List.of(retiringNode.hostname())).get(0); + retiringNode = nodeRepo.list(zoneId, NodeFilter.all().hostnames(retiringNode.hostname())).get(0); assertEquals(Node.State.active, retiringNode.state()); assertFalse(retiringNode.wantToRetire()); } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/os/OsApiTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/os/OsApiTest.java index c1358decf19..90685980835 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/os/OsApiTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/os/OsApiTest.java @@ -10,6 +10,7 @@ import com.yahoo.config.provision.zone.ZoneId; import com.yahoo.vespa.athenz.api.AthenzIdentity; import com.yahoo.vespa.athenz.api.AthenzUser; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.application.SystemApplication; import com.yahoo.vespa.hosted.controller.integration.NodeRepositoryMock; import com.yahoo.vespa.hosted.controller.integration.ZoneApiMock; @@ -140,7 +141,7 @@ public class OsApiTest extends ControllerContainerTest { for (ZoneId zone : zones) { for (SystemApplication application : SystemApplication.all()) { var targetVersion = nodeRepository().targetVersionsOf(zone).osVersion(application.nodeType()); - for (Node node : nodeRepository().list(zone, application.id())) { + for (Node node : nodeRepository().list(zone, NodeFilter.all().applications(application.id()))) { var version = targetVersion.orElse(node.wantedOsVersion()); nodeRepository().putNodes(zone, Node.builder(node).currentOsVersion(version).wantedOsVersion(version).build()); } diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/versions/VersionStatusTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/versions/VersionStatusTest.java index 6e70fb8c3cb..03002aee955 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/versions/VersionStatusTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/versions/VersionStatusTest.java @@ -9,6 +9,7 @@ import com.yahoo.config.provision.zone.ZoneApi; import com.yahoo.vespa.hosted.controller.Controller; import com.yahoo.vespa.hosted.controller.ControllerTester; import com.yahoo.vespa.hosted.controller.api.integration.configserver.Node; +import com.yahoo.vespa.hosted.controller.api.integration.configserver.NodeFilter; import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobId; import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobType; import com.yahoo.vespa.hosted.controller.application.ApplicationPackage; @@ -69,7 +70,7 @@ public class VersionStatusTest { Version version1 = Version.fromString("6.5"); // Upgrade some config servers for (ZoneApi zone : tester.zoneRegistry().zones().all().zones()) { - for (Node node : tester.configServer().nodeRepository().list(zone.getId(), SystemApplication.configServer.id())) { + for (Node node : tester.configServer().nodeRepository().list(zone.getId(), NodeFilter.all().applications(SystemApplication.configServer.id()))) { Node upgradedNode = Node.builder(node).currentVersion(version1).build(); tester.configServer().nodeRepository().putNodes(zone.getId(), upgradedNode); break; @@ -113,7 +114,7 @@ public class VersionStatusTest { // Downgrade one config server in each zone Version ancientVersion = Version.fromString("5.1"); for (ZoneApi zone : tester.controller().zoneRegistry().zones().all().zones()) { - for (Node node : tester.configServer().nodeRepository().list(zone.getId(), SystemApplication.configServer.id())) { + for (Node node : tester.configServer().nodeRepository().list(zone.getId(), NodeFilter.all().applications(SystemApplication.configServer.id()))) { Node downgradedNode = Node.builder(node).currentVersion(ancientVersion).build(); tester.configServer().nodeRepository().putNodes(zone.getId(), downgradedNode); break; |