diff options
author | Valerij Fredriksen <freva@users.noreply.github.com> | 2018-02-26 14:55:00 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-26 14:55:00 +0100 |
commit | 41650f55100e53527d6dd2376b233a8c06e89fd7 (patch) | |
tree | 494a33cd11bd49588358c46465e20e840c320e10 | |
parent | 78d0a367ca60417bd5bb86de5e58375b69fd27dc (diff) | |
parent | 2f02d7c7399086792eafe6e9c67bac4488d7d88e (diff) |
Merge pull request #5150 from vespa-engine/hmusum/add-getter-for-config-server-hostnames-in-Environment
Make it possible to get config server hostnames
2 files changed, 16 insertions, 16 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 0fe9cc97b0f..e6226e69dea 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 @@ -30,7 +30,7 @@ import java.util.stream.Collectors; /** * Various utilities for getting values from node-admin's environment. Immutable. * - * @author bakksjo + * @author Øyvind Bakksjø * @author hmusum */ public class Environment { @@ -42,6 +42,7 @@ public class Environment { private static final String LOGSTASH_NODES = "LOGSTASH_NODES"; private static final String COREDUMP_FEED_ENDPOINT = "COREDUMP_FEED_ENDPOINT"; + private final List<String> configServerHostNames; private final List<URI> configServerURIs; private final String environment; private final String region; @@ -74,11 +75,7 @@ public class Environment { PathResolver pathResolver, Optional<String> coreDumpFeedEndpoint, NodeType nodeType) { - this(createConfigServerUris( - configServerConfig.scheme(), - configServerConfig.hosts(), - configServerConfig.port()), - + this(configServerConfig, hostedEnvironment, hostedRegion, Defaults.getDefaults().vespaHostname(), @@ -104,7 +101,7 @@ public class Environment { ); } - public Environment(List<URI> configServerURIs, + public Environment(ConfigServerConfig configServerConfig, String environment, String region, String parentHostHostname, @@ -116,7 +113,11 @@ public class Environment { Optional<KeyStoreOptions> trustStoreOptions, Optional<AthenzIdentity> athenzIdentity, NodeType nodeType) { - this.configServerURIs = configServerURIs; + this.configServerHostNames = configServerConfig.hosts(); + this.configServerURIs = createConfigServerUris( + configServerConfig.scheme(), + configServerConfig.hosts(), + configServerConfig.port()); this.environment = environment; this.region = region; this.parentHostHostname = parentHostHostname; @@ -130,6 +131,8 @@ public class Environment { this.nodeType = nodeType; } + public List<String> getConfigServerHostNames() { return configServerHostNames; } + public List<URI> getConfigServerUris() { return configServerURIs; } public String getEnvironment() { @@ -265,7 +268,7 @@ public class Environment { public NodeType getNodeType() { return nodeType; } public static class Builder { - private List<URI> configServerURIs = Collections.emptyList(); + ConfigServerConfig configServerConfig = new ConfigServerConfig(new ConfigServerConfig.Builder()); private String environment; private String region; private String parentHostHostname; @@ -278,8 +281,8 @@ public class Environment { private AthenzIdentity athenzIdentity; private NodeType nodeType = NodeType.tenant; - public Builder configServerUris(List<URI> uris) { - configServerURIs = uris; + public Builder configServerConfig(ConfigServerConfig configServerConfig) { + this.configServerConfig = configServerConfig; return this; } @@ -339,7 +342,7 @@ public class Environment { } public Environment build() { - return new Environment(configServerURIs, environment, region, parentHostHostname, + return new Environment(configServerConfig, environment, region, parentHostHostname, Optional.ofNullable(inetAddressResolver).orElseGet(InetAddressResolver::new), Optional.ofNullable(pathResolver).orElseGet(PathResolver::new), logstashNodes, feedEndpoint, 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 bc8a45f2dfb..d90d5b22eeb 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 @@ -310,11 +310,8 @@ public class DockerOperationsImpl implements DockerOperations { private String createContainerEnvironmentSettings(Environment environment, ContainerNodeSpec nodeSpec) { ObjectMapper objectMapper = new ObjectMapper(); - String configServers = environment.getConfigServerUris().stream() - .map(URI::getHost) - .collect(Collectors.joining(",")); ContainerEnvironmentSettings settings = new ContainerEnvironmentSettings(); - settings.set("configServerAddresses", configServers); + settings.set("configServerAddresses", environment.getConfigServerHostNames()); settings.set("nodeType", nodeSpec.nodeType); try { |