summaryrefslogtreecommitdiffstats
path: root/node-admin
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@yahooinc.com>2021-10-14 15:21:33 +0200
committerValerij Fredriksen <valerijf@yahooinc.com>2021-10-14 15:26:08 +0200
commit7f64a2f8087aedc57becf466b126bda4d24692ac (patch)
treeceb044b4656aa4a59588c5bab3784606969033ba /node-admin
parent3df82df258ba50fe82a3b3fc87af032fae083336 (diff)
Create factory method for NodeAgentContext builder
Diffstat (limited to 'node-admin')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImpl.java26
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerFailTest.java2
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerTester.java2
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainerTest.java8
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/acl/AclMaintainerTest.java2
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java2
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandlerTest.java2
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImplTest.java6
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImplTest.java2
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImplTest.java4
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextManagerTest.java2
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImplTest.java4
12 files changed, 33 insertions, 29 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImpl.java
index 2751d4d96b0..cc326f47baf 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImpl.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImpl.java
@@ -204,6 +204,19 @@ public class NodeAgentContextImpl implements NodeAgentContext {
return path;
}
+ public static NodeAgentContextImpl.Builder builder(NodeSpec node) {
+ return new Builder(new NodeSpec.Builder(node));
+ }
+
+ /**
+ * Creates a NodeAgentContext.Builder with a NodeSpec that has the given hostname and some
+ * reasonable values for the remaining required NodeSpec fields. Use {@link #builder(NodeSpec)}
+ * if you want to control the entire NodeSpec.
+ */
+ public static NodeAgentContextImpl.Builder builder(String hostname) {
+ return new Builder(NodeSpec.Builder.testSpec(hostname));
+ }
+
/** For testing only! */
public static class Builder {
private NodeSpec.Builder nodeSpecBuilder;
@@ -218,17 +231,8 @@ public class NodeAgentContextImpl implements NodeAgentContext {
private Path containerStorage;
private Optional<ApplicationId> hostExclusiveTo = Optional.empty();
- public Builder(NodeSpec node) {
- this.nodeSpecBuilder = new NodeSpec.Builder(node);
- }
-
- /**
- * Creates a NodeAgentContext.Builder with a NodeSpec that has the given hostname and some
- * reasonable values for the remaining required NodeSpec fields. Use {@link #Builder(NodeSpec)}
- * if you want to control the entire NodeSpec.
- */
- public Builder(String hostname) {
- this.nodeSpecBuilder = NodeSpec.Builder.testSpec(hostname);
+ private Builder(NodeSpec.Builder nodeSpecBuilder) {
+ this.nodeSpecBuilder = nodeSpecBuilder;
}
public Builder nodeSpecBuilder(Function<NodeSpec.Builder, NodeSpec.Builder> nodeSpecBuilderModifier) {
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerFailTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerFailTest.java
index b3404b4108e..8683c2cb417 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerFailTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerFailTest.java
@@ -33,7 +33,7 @@ public class ContainerFailTest {
.build();
tester.addChildNodeRepositoryNode(nodeSpec);
- NodeAgentContext context = new NodeAgentContextImpl.Builder(nodeSpec).build();
+ NodeAgentContext context = NodeAgentContextImpl.builder(nodeSpec).build();
tester.inOrder(tester.containerOperations).createContainer(containerMatcher(containerName), any(), any());
tester.inOrder(tester.containerOperations).resumeNode(containerMatcher(containerName));
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerTester.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerTester.java
index 38c1dcb2fb6..08e335f188a 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerTester.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integration/ContainerTester.java
@@ -91,7 +91,7 @@ public class ContainerTester implements AutoCloseable {
VespaServiceDumper.DUMMY_INSTANCE);
nodeAdmin = new NodeAdminImpl(nodeAgentFactory, metrics, clock, Duration.ofMillis(10), Duration.ZERO);
NodeAgentContextFactory nodeAgentContextFactory = (nodeSpec, acl) ->
- new NodeAgentContextImpl.Builder(nodeSpec).acl(acl).fileSystem(fileSystem).build();
+ NodeAgentContextImpl.builder(nodeSpec).acl(acl).fileSystem(fileSystem).build();
nodeAdminStateUpdater = new NodeAdminStateUpdater(nodeAgentContextFactory, nodeRepository, orchestrator,
nodeAdmin, HOST_HOSTNAME, clock, flagSource);
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 241f04ee2d6..10e62870b43 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
@@ -51,7 +51,7 @@ public class StorageMaintainerTest {
@Test
public void testDiskUsed() throws IOException {
- NodeAgentContext context = new NodeAgentContextImpl.Builder("host-1.domain.tld").fileSystem(fileSystem).build();
+ NodeAgentContext context = NodeAgentContextImpl.builder("host-1.domain.tld").fileSystem(fileSystem).build();
Files.createDirectories(context.pathOnHostFromPathInNode("/"));
terminal.expectCommand("du -xsk /home/docker/container-storage/host-1 2>&1", 0, "321\t/home/docker/container-storage/host-1/");
@@ -112,7 +112,7 @@ public class StorageMaintainerTest {
}
private static NodeAgentContext createNodeAgentContextAndContainerStorage(FileSystem fileSystem, String containerName) throws IOException {
- NodeAgentContext context = new NodeAgentContextImpl.Builder(containerName + ".domain.tld")
+ NodeAgentContext context = NodeAgentContextImpl.builder(containerName + ".domain.tld")
.fileSystem(fileSystem).build();
Path containerVespaHomeOnHost = context.pathOnHostFromPathInNode(context.pathInNodeUnderVespaHome(""));
@@ -142,7 +142,7 @@ public class StorageMaintainerTest {
@Test
public void not_run_if_not_enough_used() throws IOException {
- NodeAgentContext context = new NodeAgentContextImpl.Builder(
+ NodeAgentContext context = NodeAgentContextImpl.builder(
NodeSpec.Builder.testSpec("h123a.domain.tld").realResources(new NodeResources(1, 1, 1, 1)).build())
.fileSystem(fileSystem).build();
Files.createDirectories(context.pathOnHostFromPathInNode("/"));
@@ -154,7 +154,7 @@ public class StorageMaintainerTest {
@Test
public void deletes_correct_amount() throws IOException {
- NodeAgentContext context = new NodeAgentContextImpl.Builder(
+ NodeAgentContext context = NodeAgentContextImpl.builder(
NodeSpec.Builder.testSpec("h123a.domain.tld").realResources(new NodeResources(1, 1, 1, 1)).build())
.fileSystem(fileSystem).build();
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/acl/AclMaintainerTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/acl/AclMaintainerTest.java
index a10ce1c7d74..80fde82a89f 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/acl/AclMaintainerTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/acl/AclMaintainerTest.java
@@ -41,7 +41,7 @@ public class AclMaintainerTest {
private final FileSystem fileSystem = TestFileSystem.create();
private final Function<Acl, NodeAgentContext> contextGenerator =
- acl -> new NodeAgentContextImpl.Builder("container1.host.com").fileSystem(fileSystem).acl(acl).build();
+ acl -> NodeAgentContextImpl.builder("container1.host.com").fileSystem(fileSystem).acl(acl).build();
private final List<String> writtenFileContents = new ArrayList<>();
@Test
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java
index f56794382e8..0f210cabcea 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java
@@ -28,7 +28,7 @@ public class CoreCollectorTest {
private final String JDK_PATH = "/path/to/jdk/java";
private final ContainerOperations docker = mock(ContainerOperations.class);
private final CoreCollector coreCollector = new CoreCollector(docker);
- private final NodeAgentContext context = new NodeAgentContextImpl.Builder("container-123.domain.tld").build();
+ private final NodeAgentContext context = NodeAgentContextImpl.builder("container-123.domain.tld").build();
private final Path TEST_CORE_PATH = Paths.get("/tmp/core.1234");
private final Path TEST_BIN_PATH = Paths.get("/usr/bin/program");
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandlerTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandlerTest.java
index 673ad9eee86..6ca446f1e08 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandlerTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandlerTest.java
@@ -45,7 +45,7 @@ import static org.mockito.Mockito.when;
*/
public class CoredumpHandlerTest {
private final FileSystem fileSystem = TestFileSystem.create();
- private final NodeAgentContext context = new NodeAgentContextImpl.Builder("container-123.domain.tld")
+ private final NodeAgentContext context = NodeAgentContextImpl.builder("container-123.domain.tld")
.fileSystem(fileSystem).build();
private final Path crashPathInContainer = fileSystem.getPath("/var/crash");
private final Path doneCoredumpsPath = fileSystem.getPath("/home/docker/dumps");
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImplTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImplTest.java
index 0853223d142..dfa1a0ee0df 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImplTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/servicedump/VespaServiceDumperImplTest.java
@@ -73,7 +73,7 @@ class VespaServiceDumperImplTest {
VespaServiceDumper reporter = new VespaServiceDumperImpl(
ArtifactProducers.createDefault(Sleeper.NOOP), operations, syncClient, nodeRepository, clock);
- NodeAgentContextImpl context = new NodeAgentContextImpl.Builder(nodeSpec)
+ NodeAgentContextImpl context = NodeAgentContextImpl.builder(nodeSpec)
.fileSystem(fileSystem)
.build();
reporter.processServiceDumpRequest(context);
@@ -115,7 +115,7 @@ class VespaServiceDumperImplTest {
VespaServiceDumper reporter = new VespaServiceDumperImpl(
ArtifactProducers.createDefault(Sleeper.NOOP), operations, syncClient, nodeRepository, clock);
- NodeAgentContextImpl context = new NodeAgentContextImpl.Builder(nodeSpec)
+ NodeAgentContextImpl context = NodeAgentContextImpl.builder(nodeSpec)
.fileSystem(fileSystem)
.build();
reporter.processServiceDumpRequest(context);
@@ -158,7 +158,7 @@ class VespaServiceDumperImplTest {
new ServiceDumpReport.DumpOptions(true, 20.0, null));
VespaServiceDumper reporter = new VespaServiceDumperImpl(
ArtifactProducers.createDefault(Sleeper.NOOP), operations, syncClient, nodeRepository, clock);
- NodeAgentContextImpl context = new NodeAgentContextImpl.Builder(nodeSpec)
+ NodeAgentContextImpl context = NodeAgentContextImpl.builder(nodeSpec)
.fileSystem(fileSystem)
.build();
reporter.processServiceDumpRequest(context);
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImplTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImplTest.java
index ed400a160c9..232b95f5ede 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImplTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImplTest.java
@@ -154,7 +154,7 @@ public class NodeAdminImplTest {
}
private NodeAgentContext createNodeAgentContext(String hostname) {
- return new NodeAgentContextImpl.Builder(hostname).build();
+ return NodeAgentContextImpl.builder(hostname).build();
}
private NodeAgentWithScheduler mockNodeAgentWithSchedulerFactory(NodeAgentContext context) {
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImplTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImplTest.java
index 680d197b77d..cf6726bd64c 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImplTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextImplTest.java
@@ -18,7 +18,7 @@ import static org.junit.Assert.assertTrue;
*/
public class NodeAgentContextImplTest {
private final FileSystem fileSystem = TestFileSystem.create();
- private final NodeAgentContext context = new NodeAgentContextImpl.Builder("container-1.domain.tld")
+ private final NodeAgentContext context = NodeAgentContextImpl.builder("container-1.domain.tld")
.fileSystem(fileSystem).build();
@Test
@@ -89,6 +89,6 @@ public class NodeAgentContextImplTest {
private static NodeAgentContext createContextWithDisabledTasks(String... tasks) {
InMemoryFlagSource flagSource = new InMemoryFlagSource();
flagSource.withListFlag(PermanentFlags.DISABLED_HOST_ADMIN_TASKS.id(), List.of(tasks), String.class);
- return new NodeAgentContextImpl.Builder("node123").flagSource(flagSource).build();
+ return NodeAgentContextImpl.builder("node123").flagSource(flagSource).build();
}
}
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextManagerTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextManagerTest.java
index 2ed3b66c1b1..51fedd54381 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextManagerTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentContextManagerTest.java
@@ -142,7 +142,7 @@ public class NodeAgentContextManagerTest {
}
private static NodeAgentContext generateContext() {
- return new NodeAgentContextImpl.Builder("container-123.domain.tld").build();
+ return NodeAgentContextImpl.builder("container-123.domain.tld").build();
}
private static class AsyncExecutor<T> {
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 3aec6c1902a..8764db502bb 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
@@ -233,7 +233,7 @@ public class NodeAgentImplTest {
nodeAgent.doConverge(secondContext);
inOrder.verify(orchestrator, never()).resume(any(String.class));
- NodeAgentContext thirdContext = new NodeAgentContextImpl.Builder(specBuilder.vcpu(5).build()).cpuSpeedUp(1.25).build();
+ NodeAgentContext thirdContext = NodeAgentContextImpl.builder(specBuilder.vcpu(5).build()).cpuSpeedUp(1.25).build();
nodeAgent.doConverge(thirdContext);
ContainerResources resourcesAfterThird = ContainerResources.from(0, 4, 16);
mockGetContainer(dockerImage, resourcesAfterThird, true);
@@ -777,7 +777,7 @@ public class NodeAgentImplTest {
}
private NodeAgentContext createContext(NodeSpec nodeSpec) {
- return new NodeAgentContextImpl.Builder(nodeSpec).build();
+ return NodeAgentContextImpl.builder(nodeSpec).build();
}
private NodeSpec.Builder nodeBuilder(NodeState state) {