summaryrefslogtreecommitdiffstats
path: root/vespa-hadoop
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2022-03-28 14:50:45 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2022-03-28 14:50:45 +0200
commit2806dcc16b553d06dbbf2ac1a29de447b6748be9 (patch)
treeadc706bc7f49afb1ba2b38e3cec1f20d7f3f164f /vespa-hadoop
parent216f45d5debed006c9e69d6e979cc21c7392fbd5 (diff)
Wire in proxy configuration vespa-feed-client integration in vespa-hadoop
Diffstat (limited to 'vespa-hadoop')
-rw-r--r--vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaRecordWriter.java6
-rw-r--r--vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/util/VespaConfiguration.java9
2 files changed, 15 insertions, 0 deletions
diff --git a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaRecordWriter.java b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaRecordWriter.java
index c381ec87492..6d6c3789835 100644
--- a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaRecordWriter.java
+++ b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaRecordWriter.java
@@ -130,6 +130,12 @@ public class VespaRecordWriter extends RecordWriter<Object, Object> {
.setMaxStreamPerConnection(streamsPerConnection)
.setDryrun(config.dryrun())
.setRetryStrategy(retryStrategy(config));
+ if (config.proxyHost() != null) {
+ URI proxyUri = URI.create(String.format(
+ "%s://%s:%d", config.proxyScheme(), config.proxyHost(), config.proxyPort()));
+ log.info("Using proxy " + proxyUri);
+ feedClientBuilder.setProxy(proxyUri);
+ }
onFeedClientInitialization(feedClientBuilder);
return feedClientBuilder.build();
diff --git a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/util/VespaConfiguration.java b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/util/VespaConfiguration.java
index 1421a3fcd43..715546fe6fe 100644
--- a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/util/VespaConfiguration.java
+++ b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/util/VespaConfiguration.java
@@ -16,6 +16,7 @@ public class VespaConfiguration {
public static final String USE_SSL = "vespa.feed.ssl";
public static final String PROXY_HOST = "vespa.feed.proxy.host";
public static final String PROXY_PORT = "vespa.feed.proxy.port";
+ public static final String PROXY_SCHEME = "vespa.feed.proxy.scheme";
public static final String DRYRUN = "vespa.feed.dryrun";
public static final String USE_COMPRESSION = "vespa.feed.usecompression";
public static final String DATA_FORMAT = "vespa.feed.data.format";
@@ -71,6 +72,13 @@ public class VespaConfiguration {
}
+ public String proxyScheme() {
+ String raw = getString(PROXY_SCHEME);
+ if (raw == null) return "http";
+ return raw;
+ }
+
+
public boolean dryrun() {
return getBoolean(DRYRUN, false);
}
@@ -186,6 +194,7 @@ public class VespaConfiguration {
sb.append(USE_SSL + ": " + useSSL().map(Object::toString).orElse("<empty>") + "\n");
sb.append(PROXY_HOST + ": " + proxyHost() + "\n");
sb.append(PROXY_PORT + ": " + proxyPort() + "\n");
+ sb.append(PROXY_SCHEME + ": " + proxyScheme() + "\n");
sb.append(DRYRUN + ": " + dryrun() +"\n");
sb.append(USE_COMPRESSION + ": " + useCompression() +"\n");
sb.append(DATA_FORMAT + ": " + dataFormat() +"\n");