diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2020-03-27 12:46:37 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2020-03-27 12:46:37 +0100 |
commit | d772522499db381df8ee43fea95343e1500dcfef (patch) | |
tree | 0db6c0d1afae41920deb978c564d1994d0c51dbd /configserver | |
parent | e63f7068d3716ef7aa174d6ae7c9a5a5dd754ee3 (diff) |
Add feature flag to enable Nginx upstream proxy protocol
Diffstat (limited to 'configserver')
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/model/LbServicesProducer.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/model/LbServicesProducer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/model/LbServicesProducer.java index 6366576e163..7031e80e1d7 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/model/LbServicesProducer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/model/LbServicesProducer.java @@ -9,7 +9,11 @@ import com.yahoo.config.model.api.ServiceInfo; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.TenantName; import com.yahoo.config.provision.Zone; +import com.yahoo.config.provision.zone.ZoneId; +import com.yahoo.vespa.flags.BooleanFlag; +import com.yahoo.vespa.flags.FetchVector; import com.yahoo.vespa.flags.FlagSource; +import com.yahoo.vespa.flags.Flags; import java.util.Collections; import java.util.Comparator; @@ -32,14 +36,19 @@ public class LbServicesProducer implements LbServicesConfig.Producer { private final Map<TenantName, Set<ApplicationInfo>> models; private final Zone zone; + private final BooleanFlag nginxUpstreamProxyProtocol; public LbServicesProducer(Map<TenantName, Set<ApplicationInfo>> models, Zone zone, FlagSource flagSource) { this.models = models; this.zone = zone; + this.nginxUpstreamProxyProtocol = Flags.NGINX_UPSTREAM_PROXY_PROTOCOL.bindTo(flagSource); } @Override public void getConfig(LbServicesConfig.Builder builder) { + ZoneId zoneId = ZoneId.from(zone.environment().value(), zone.region().value()); + builder.nginxUpstreamProxyProtocol( + nginxUpstreamProxyProtocol.with(FetchVector.Dimension.ZONE_ID, zoneId.value()).value()); models.keySet().stream() .sorted() .forEach(tenant -> { |