summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-03-12 13:35:27 +0100
committerHarald Musum <musum@oath.com>2018-03-12 13:35:27 +0100
commit065a35ac64c9ebcc8d9209e4d5a1a67c839b596b (patch)
tree3b4f8c13d8307f41ccbb86caceb9126266b2bfe3
parent3dcbc8bd9783fb7836f3155ca353bd02b9cee836 (diff)
Avoid hardcoding default flavor in config server container data
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/Environment.java26
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/containerdata/ConfigServerContainerData.java3
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImplTest.java1
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerTester.java1
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/logging/FilebeatConfigProviderTest.java1
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/StorageMaintainerTest.java1
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImplTest.java4
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/util/EnvironmentTest.java1
8 files changed, 30 insertions, 8 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/Environment.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/Environment.java
index da7be1bff6d..4fb3049c39d 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/Environment.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/Environment.java
@@ -58,6 +58,7 @@ public class Environment {
private final Optional<KeyStoreOptions> trustStoreOptions;
private final Optional<AthenzIdentity> athenzIdentity;
private final NodeType nodeType;
+ private final String defaultFlavor;
static {
filenameFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));
@@ -71,7 +72,8 @@ public class Environment {
new PathResolver(),
Optional.of(getEnvironmentVariable(COREDUMP_FEED_ENDPOINT)),
- NodeType.host);
+ NodeType.host,
+ "d-2-8-50");
}
public Environment(ConfigServerConfig configServerConfig,
@@ -80,7 +82,8 @@ public class Environment {
String hostedSystem,
PathResolver pathResolver,
Optional<String> coreDumpFeedEndpoint,
- NodeType nodeType) {
+ NodeType nodeType,
+ String defaultFlavor) {
this(configServerConfig,
hostedEnvironment,
hostedRegion,
@@ -90,7 +93,8 @@ public class Environment {
pathResolver,
getLogstashNodesFromEnvironment(),
coreDumpFeedEndpoint,
- nodeType
+ nodeType,
+ defaultFlavor
);
}
@@ -103,7 +107,8 @@ public class Environment {
PathResolver pathResolver,
List<String> logstashNodes,
Optional<String> feedEndpoint,
- NodeType nodeType) {
+ NodeType nodeType,
+ String defaultFlavor) {
this.configServerHostNames = configServerConfig.hosts();
this.configServerURIs = createConfigServerUris(
configServerConfig.scheme(),
@@ -132,6 +137,7 @@ public class Environment {
this.logstashNodes = logstashNodes;
this.feedEndpoint = feedEndpoint;
this.nodeType = nodeType;
+ this.defaultFlavor = defaultFlavor;
}
public List<String> getConfigServerHostNames() { return configServerHostNames; }
@@ -272,6 +278,8 @@ public class Environment {
public NodeType getNodeType() { return nodeType; }
+ public String getDefaultFlavor() { return defaultFlavor; }
+
public static class Builder {
private ConfigServerConfig configServerConfig;
private String environment;
@@ -283,6 +291,7 @@ public class Environment {
private List<String> logstashNodes = Collections.emptyList();
private Optional<String> feedEndpoint = Optional.empty();
private NodeType nodeType = NodeType.tenant;
+ private String defaultFlavor;
public Builder configServerConfig(ConfigServerConfig configServerConfig) {
this.configServerConfig = configServerConfig;
@@ -334,11 +343,17 @@ public class Environment {
return this;
}
+ public Builder defaultFlavor(String defaultFlavor) {
+ this.defaultFlavor = defaultFlavor;
+ return this;
+ }
+
public Environment build() {
Objects.requireNonNull(configServerConfig, "configServerConfig cannot be null");
Objects.requireNonNull(environment, "environment cannot be null");
Objects.requireNonNull(region, "region cannot be null");
Objects.requireNonNull(system, "system cannot be null");
+ Objects.requireNonNull(defaultFlavor, "default flavor cannot be null");
return new Environment(configServerConfig,
environment,
@@ -349,7 +364,8 @@ public class Environment {
Optional.ofNullable(pathResolver).orElseGet(PathResolver::new),
logstashNodes,
feedEndpoint,
- nodeType);
+ nodeType,
+ defaultFlavor);
}
}
}
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/containerdata/ConfigServerContainerData.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/containerdata/ConfigServerContainerData.java
index a69fac508df..36da09a72aa 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/containerdata/ConfigServerContainerData.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/containerdata/ConfigServerContainerData.java
@@ -37,8 +37,7 @@ public class ConfigServerContainerData {
" <hostedVespa>true</hostedVespa>\n" +
" <multitenant>true</multitenant>\n" +
" <useVespaVersionInRequest>true</useVespaVersionInRequest>\n" +
- // TODO: Avoid hardcoding of default flavor
- " <defaultFlavor>t2.xlarge</defaultFlavor>\n" +
+ " <defaultFlavor>" + environment.getDefaultFlavor() + "</defaultFlavor>\n" +
" <zookeeper>\n" +
" <barrierTimeout>1200</barrierTimeout>\n" +
" </zookeeper>\n" +
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImplTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImplTest.java
index b0fc877bd88..81df3e52a21 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImplTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImplTest.java
@@ -34,6 +34,7 @@ public class DockerOperationsImplTest {
.region("us-east-1")
.environment("prod")
.system("main")
+ .defaultFlavor("d-2-8-50")
.build();
private final Docker docker = mock(Docker.class);
private final ProcessExecuter processExecuter = mock(ProcessExecuter.class);
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerTester.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerTester.java
index 7923a58ec47..daf87422b9d 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerTester.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/DockerTester.java
@@ -66,6 +66,7 @@ public class DockerTester implements AutoCloseable {
.environment("prod")
.system("main")
.pathResolver(new PathResolver(pathToVespaHome, Paths.get("/tmp"), Paths.get("/tmp")))
+ .defaultFlavor("d-2-8-50")
.build();
Clock clock = Clock.systemUTC();
DockerOperations dockerOperations = new DockerOperationsImpl(dockerMock, environment, null, new IPAddressesImpl());
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 9de88cbb8b3..d4eb327439a 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
@@ -102,6 +102,7 @@ public class FilebeatConfigProviderTest {
.region(region)
.system(system)
.logstashNodes(logstashNodes)
+ .defaultFlavor("d-2-8-50")
.build();
}
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 cb7c22f1da9..9b618b9cf45 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
@@ -40,6 +40,7 @@ public class StorageMaintainerTest {
.environment("prod")
.system("main")
.pathResolver(new PathResolver())
+ .defaultFlavor("d-2-8-50")
.build();
private final DockerOperations docker = mock(DockerOperations.class);
private final ProcessExecuter processExecuter = mock(ProcessExecuter.class);
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 6a93d4e3664..a97a11faab8 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
@@ -88,7 +88,9 @@ public class NodeAgentImplTest {
.system("main")
.parentHostHostname("parent.host.name.yahoo.com")
.inetAddressResolver(new InetAddressResolver())
- .pathResolver(pathResolver).build();
+ .pathResolver(pathResolver)
+ .defaultFlavor("d-2-8-50")
+ .build();
private final ContainerNodeSpec.Builder nodeSpecBuilder = new ContainerNodeSpec.Builder()
.hostname(hostName)
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/util/EnvironmentTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/util/EnvironmentTest.java
index 80749e5d34b..83edd573260 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/util/EnvironmentTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/util/EnvironmentTest.java
@@ -23,6 +23,7 @@ public class EnvironmentTest {
.environment("prod")
.system("main")
.pathResolver(new PathResolver())
+ .defaultFlavor("d-2-8-50")
.build();
@Test