summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-03-18 13:19:18 +0100
committerGitHub <noreply@github.com>2018-03-18 13:19:18 +0100
commit0e114ffb01e8067bcc474665670cc1dfb90af9d2 (patch)
tree56bad65271dcae521d09f946e7d5e3018b424198
parenta7beed17a937f80e05a326356b38935728815682 (diff)
parent05607598655a2e76addcefe147f811451ae4797e (diff)
Merge pull request #5370 from vespa-engine/hmusum/avoid-usingadd-cloud-to-Environment
Add cloud
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/Environment.java63
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/docker/DockerOperationsImpl.java1
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/MotdContainerDataTest.java1
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/PromptContainerDataTest.java1
-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/integrationTests/MultiDockerTest.java2
-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.java3
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/util/EnvironmentTest.java1
11 files changed, 39 insertions, 37 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 94805e37105..dc1fb5639c2 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
@@ -41,6 +41,7 @@ public class Environment {
private static final String ENVIRONMENT = "ENVIRONMENT";
private static final String REGION = "REGION";
private static final String SYSTEM = "SYSTEM";
+ private static final String CLOUD = "CLOUD";
private static final String LOGSTASH_NODES = "LOGSTASH_NODES";
private static final String COREDUMP_FEED_ENDPOINT = "COREDUMP_FEED_ENDPOINT";
@@ -59,6 +60,7 @@ public class Environment {
private final Optional<AthenzIdentity> athenzIdentity;
private final NodeType nodeType;
private final String defaultFlavor;
+ private final String cloud;
static {
filenameFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));
@@ -69,36 +71,17 @@ public class Environment {
getEnvironmentVariable(ENVIRONMENT),
getEnvironmentVariable(REGION),
getEnvironmentVariable(SYSTEM),
-
+ Defaults.getDefaults().vespaHostname(),
+ new InetAddressResolver(),
new PathResolver(),
+ getLogstashNodesFromEnvironment(),
Optional.of(getEnvironmentVariable(COREDUMP_FEED_ENDPOINT)),
NodeType.host,
- "d-2-8-50");
- }
-
- public Environment(ConfigServerConfig configServerConfig,
- String hostedEnvironment,
- String hostedRegion,
- String hostedSystem,
- PathResolver pathResolver,
- Optional<String> coreDumpFeedEndpoint,
- NodeType nodeType,
- String defaultFlavor) {
- this(configServerConfig,
- hostedEnvironment,
- hostedRegion,
- hostedSystem,
- Defaults.getDefaults().vespaHostname(),
- new InetAddressResolver(),
- pathResolver,
- getLogstashNodesFromEnvironment(),
- coreDumpFeedEndpoint,
- nodeType,
- defaultFlavor
- );
+ "d-2-8-50",
+ getEnvironmentVariable(CLOUD));
}
- public Environment(ConfigServerConfig configServerConfig,
+ private Environment(ConfigServerConfig configServerConfig,
String environment,
String region,
String system,
@@ -108,7 +91,15 @@ public class Environment {
List<String> logstashNodes,
Optional<String> coreDumpFeedEndpoint,
NodeType nodeType,
- String defaultFlavor) {
+ String defaultFlavor,
+ String cloud) {
+ 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");
+ Objects.requireNonNull(cloud, "cloud cannot be null");
+
this.configServerHostNames = configServerConfig.hosts();
this.configServerURIs = createConfigServerUris(
configServerConfig.scheme(),
@@ -136,6 +127,7 @@ public class Environment {
this.coredumpFeedEndpoint = coreDumpFeedEndpoint;
this.nodeType = nodeType;
this.defaultFlavor = defaultFlavor;
+ this.cloud = cloud;
}
public List<String> getConfigServerHostNames() { return configServerHostNames; }
@@ -168,7 +160,7 @@ public class Environment {
return getEnvironment() + "." + getRegion();
}
- public static List<URI> createConfigServerUris(String scheme, List<String> configServerHosts, int port) {
+ private static List<URI> createConfigServerUris(String scheme, List<String> configServerHosts, int port) {
return configServerHosts.stream()
.map(hostname -> URI.create(scheme + "://" + hostname + ":" + port))
.collect(Collectors.toList());
@@ -278,6 +270,8 @@ public class Environment {
public String getDefaultFlavor() { return defaultFlavor; }
+ public String getCloud() { return cloud; }
+
public static class Builder {
private ConfigServerConfig configServerConfig;
private String environment;
@@ -290,6 +284,7 @@ public class Environment {
private Optional<String> coredumpFeedEndpoint = Optional.empty();
private NodeType nodeType = NodeType.tenant;
private String defaultFlavor;
+ private String cloud;
public Builder configServerConfig(ConfigServerConfig configServerConfig) {
this.configServerConfig = configServerConfig;
@@ -346,13 +341,12 @@ public class Environment {
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");
+ public Builder cloud(String cloud) {
+ this.cloud = cloud;
+ return this;
+ }
+ public Environment build() {
return new Environment(configServerConfig,
environment,
region,
@@ -363,7 +357,8 @@ public class Environment {
logstashNodes,
coredumpFeedEndpoint,
nodeType,
- defaultFlavor);
+ defaultFlavor,
+ cloud);
}
}
}
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 da23e1cb3c9..43cd4b0726f 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
@@ -342,6 +342,7 @@ public class DockerOperationsImpl implements DockerOperations {
ContainerEnvironmentSettings settings = new ContainerEnvironmentSettings();
settings.set("configServerAddresses", environment.getConfigServerHostNames());
settings.set("nodeType", nodeSpec.nodeType);
+ settings.set("cloud", environment.getCloud());
try {
return objectMapper.writeValueAsString(settings);
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/MotdContainerDataTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/MotdContainerDataTest.java
index fe095cd0002..f7d16b5fc1d 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/MotdContainerDataTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/MotdContainerDataTest.java
@@ -39,6 +39,7 @@ public class MotdContainerDataTest {
.environment("prod")
.region("aws-us-east-1a")
.defaultFlavor("cherry")
+ .cloud("mycloud")
.build());
motdContainerData.writeTo((path, content) -> {
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/PromptContainerDataTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/PromptContainerDataTest.java
index 4403b5bdad0..24ab35fc407 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/PromptContainerDataTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/containerdata/PromptContainerDataTest.java
@@ -19,6 +19,7 @@ public class PromptContainerDataTest {
.environment("prod")
.region("aws-us-east-1a")
.defaultFlavor("cherry")
+ .cloud("mycloud")
.build());
promptContainerData.writeTo((path, content) -> {
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 81df3e52a21..357467122cb 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
@@ -35,6 +35,7 @@ public class DockerOperationsImplTest {
.environment("prod")
.system("main")
.defaultFlavor("d-2-8-50")
+ .cloud("mycloud")
.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 daf87422b9d..74c82296a5b 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
@@ -67,6 +67,7 @@ public class DockerTester implements AutoCloseable {
.system("main")
.pathResolver(new PathResolver(pathToVespaHome, Paths.get("/tmp"), Paths.get("/tmp")))
.defaultFlavor("d-2-8-50")
+ .cloud("mycloud")
.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/integrationTests/MultiDockerTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/integrationTests/MultiDockerTest.java
index b987150ea57..6dec010e972 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
@@ -16,7 +16,7 @@ import java.io.IOException;
public class MultiDockerTest {
@Test
- public void test() throws InterruptedException, IOException {
+ public void test() throws InterruptedException {
try (DockerTester dockerTester = new DockerTester()) {
addAndWaitForNode(dockerTester, "host1.test.yahoo.com", new DockerImage("image1"));
ContainerNodeSpec containerNodeSpec2 = addAndWaitForNode(
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 d4eb327439a..4d4938a6f5d 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
@@ -103,6 +103,7 @@ public class FilebeatConfigProviderTest {
.system(system)
.logstashNodes(logstashNodes)
.defaultFlavor("d-2-8-50")
+ .cloud("mycloud")
.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 f707b0f9f91..7de440ec4e7 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
@@ -42,6 +42,7 @@ public class StorageMaintainerTest {
.system("main")
.pathResolver(new PathResolver())
.defaultFlavor("d-2-8-50")
+ .cloud("mycloud")
.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 45bb4bbf720..a88f417b821 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
@@ -53,7 +53,6 @@ import static org.mockito.Mockito.doThrow;
import static org.mockito.Mockito.inOrder;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@@ -92,6 +91,7 @@ public class NodeAgentImplTest {
.inetAddressResolver(new InetAddressResolver())
.pathResolver(pathResolver)
.defaultFlavor("d-2-8-50")
+ .cloud("mycloud")
.build();
private final ContainerNodeSpec.Builder nodeSpecBuilder = new ContainerNodeSpec.Builder()
@@ -302,7 +302,6 @@ public class NodeAgentImplTest {
@Test
public void failedNodeRunningContainerShouldStillBeRunning() {
final long restartGeneration = 1;
- final long rebootGeneration = 0;
final ContainerNodeSpec nodeSpec = nodeSpecBuilder
.wantedDockerImage(dockerImage)
.currentDockerImage(dockerImage)
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 83edd573260..d5afd74af66 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
@@ -24,6 +24,7 @@ public class EnvironmentTest {
.system("main")
.pathResolver(new PathResolver())
.defaultFlavor("d-2-8-50")
+ .cloud("mycloud")
.build();
@Test