aboutsummaryrefslogtreecommitdiffstats
path: root/config-model-api/src/main/java/com/yahoo/config/application
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2023-02-02 09:09:38 +0100
committerjonmv <venstad@gmail.com>2023-02-02 09:09:38 +0100
commit3878986b078a9d526773426aad29e480a4a33d56 (patch)
treeffb4040a98dc9340ee9534c15361a80737ec5136 /config-model-api/src/main/java/com/yahoo/config/application
parent26983a0fe6204707c75183ea7762659edfc11d8e (diff)
Disable internet-facing endpoints in test/staging if any zone has them disabled
Diffstat (limited to 'config-model-api/src/main/java/com/yahoo/config/application')
-rw-r--r--config-model-api/src/main/java/com/yahoo/config/application/api/DeploymentSpec.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/application/api/DeploymentSpec.java b/config-model-api/src/main/java/com/yahoo/config/application/api/DeploymentSpec.java
index d731e09d4e4..cbdb5bd6bcc 100644
--- a/config-model-api/src/main/java/com/yahoo/config/application/api/DeploymentSpec.java
+++ b/config-model-api/src/main/java/com/yahoo/config/application/api/DeploymentSpec.java
@@ -194,6 +194,10 @@ public class DeploymentSpec {
*/
public ZoneEndpoint zoneEndpoint(InstanceName instance, ZoneId zone, ClusterSpec.Id cluster) {
// TODO: look up endpoints from <dev> tag, or so, if we're to support non-prod settings.
+ if ( zone.environment().isTest()
+ && instances().stream()
+ .anyMatch(spec -> spec.zoneEndpoints().getOrDefault(cluster, Map.of()).values().stream()
+ .anyMatch(endpoint -> ! endpoint.isPublicEndpoint()))) return ZoneEndpoint.privateEndpoint;
if (zone.environment() != Environment.prod) return ZoneEndpoint.defaultEndpoint;
return instance(instance).flatMap(spec -> spec.zoneEndpoint(zone, cluster))
.orElse(ZoneEndpoint.defaultEndpoint);