diff options
author | bjormel <bjormel@yahooinc.com> | 2023-09-17 06:14:53 +0000 |
---|---|---|
committer | bjormel <bjormel@yahooinc.com> | 2023-09-24 09:14:09 +0000 |
commit | 776393ab3fecc68d8e4ef1df832eccbcc8bff83f (patch) | |
tree | c676f1805cf9cbf2b53525937d577675fd477413 /controller-server/src/main | |
parent | 3f785f57ecf663ebf3c9f195d349172f9fdeed08 (diff) |
Use Ycpi enpoint if controller is in AWS
Diffstat (limited to 'controller-server/src/main')
2 files changed, 10 insertions, 2 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/configserver/ConfigServerApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/configserver/ConfigServerApiHandler.java index caead4de03d..1bcc99b9612 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/configserver/ConfigServerApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/configserver/ConfigServerApiHandler.java @@ -2,6 +2,7 @@ package com.yahoo.vespa.hosted.controller.restapi.configserver; import ai.vespa.http.HttpURL; +import com.yahoo.config.provision.CloudName; import com.yahoo.config.provision.zone.ZoneId; import com.yahoo.config.provision.zone.ZoneList; import com.yahoo.container.jdisc.HttpRequest; @@ -44,12 +45,14 @@ public class ConfigServerApiHandler extends AuditLoggingRequestHandler { private final ZoneRegistry zoneRegistry; private final ConfigServerRestExecutor proxy; private final ZoneId controllerZone; + private final CloudName controllerCloud; public ConfigServerApiHandler(Context parentCtx, ServiceRegistry serviceRegistry, ConfigServerRestExecutor proxy, Controller controller) { super(parentCtx, controller.auditLogger()); this.zoneRegistry = serviceRegistry.zoneRegistry(); this.controllerZone = zoneRegistry.systemZone().getVirtualId(); + this.controllerCloud = zoneRegistry.systemZone().getCloudName(); this.proxy = proxy; } @@ -119,7 +122,8 @@ public class ConfigServerApiHandler extends AuditLoggingRequestHandler { } private URI getEndpoint(ZoneId zoneId) { - return controllerZone.equals(zoneId) ? CONTROLLER_URI : zoneRegistry.getConfigServerVipUri(zoneId); + if (controllerZone.equals(zoneId)) return CONTROLLER_URI; + return controllerCloud.equals(CloudName.AWS) ? zoneRegistry.getConfigServerYcpiUri(zoneId) : zoneRegistry.getConfigServerVipUri(zoneId); } } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v2/ZoneApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v2/ZoneApiHandler.java index c9bbdc2c005..81e422eb73d 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v2/ZoneApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/zone/v2/ZoneApiHandler.java @@ -2,6 +2,7 @@ package com.yahoo.vespa.hosted.controller.restapi.zone.v2; import ai.vespa.http.HttpURL; +import com.yahoo.config.provision.CloudName; import com.yahoo.config.provision.zone.ZoneId; import com.yahoo.config.provision.zone.ZoneList; import com.yahoo.container.jdisc.HttpRequest; @@ -100,7 +101,10 @@ public class ZoneApiHandler extends AuditLoggingRequestHandler { } private ProxyRequest proxyRequest(ZoneId zoneId, HttpURL.Path path, HttpRequest request) { - return ProxyRequest.tryOne(zoneRegistry.getConfigServerVipUri(zoneId), path, request); + return ProxyRequest.tryOne(zoneRegistry.systemZone().getCloudName().equals(CloudName.AWS) + ? zoneRegistry.getConfigServerYcpiUri(zoneId) + : zoneRegistry.getConfigServerVipUri(zoneId), + path, request); } } |