From baf05b2bafc89c4993040da6f8ee15d5d35edb2e Mon Sep 17 00:00:00 2001 From: Morten Tokle Date: Fri, 8 Sep 2023 11:58:35 +0200 Subject: Add token endpoints to proxy config --- .../java/com/yahoo/container/jdisc/DataplaneProxyService.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'container-disc') diff --git a/container-disc/src/main/java/com/yahoo/container/jdisc/DataplaneProxyService.java b/container-disc/src/main/java/com/yahoo/container/jdisc/DataplaneProxyService.java index 74e6954e1e1..ed3149d5406 100644 --- a/container-disc/src/main/java/com/yahoo/container/jdisc/DataplaneProxyService.java +++ b/container-disc/src/main/java/com/yahoo/container/jdisc/DataplaneProxyService.java @@ -11,10 +11,12 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.StandardCopyOption; +import java.util.List; import java.util.concurrent.ScheduledThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; +import java.util.stream.Collectors; /** * Configures a data plane proxy. Currently using Nginx. @@ -105,8 +107,8 @@ public class DataplaneProxyService extends AbstractComponent { serverKeyFile, config.mtlsPort(), config.tokenPort(), - root - )); + config.tokenEndpoints(), + root)); if (configChanged && state == NginxState.RUNNING) { changeState(NginxState.RELOAD_REQUIRED); } @@ -194,6 +196,7 @@ public class DataplaneProxyService extends AbstractComponent { Path serverKey, int vespaMtlsPort, int vespaTokenPort, + List tokenEndpoints, Path root) { try { @@ -205,6 +208,10 @@ public class DataplaneProxyService extends AbstractComponent { nginxTemplate = replace(nginxTemplate, "vespa_mtls_port", Integer.toString(vespaMtlsPort)); nginxTemplate = replace(nginxTemplate, "vespa_token_port", Integer.toString(vespaTokenPort)); nginxTemplate = replace(nginxTemplate, "prefix", root.toString()); + String tokenmapping = tokenEndpoints.stream() + .map(" %s vespatoken;"::formatted) + .collect(Collectors.joining("\n")); + nginxTemplate = replace(nginxTemplate, "vespa_token_endpoints", tokenmapping); // TODO: verify that all template vars have been expanded return nginxTemplate; -- cgit v1.2.3