diff options
author | Bjørn Christian Seime <bjorncs@yahooinc.com> | 2023-01-05 15:04:52 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@yahooinc.com> | 2023-01-05 15:56:41 +0100 |
commit | b2892d9d8e4f8965d1698fb0a774c35d51e9916b (patch) | |
tree | 9642e86304fb6a1c65475c2374f462bcebc7c302 | |
parent | f29835e32231cc853ca2e1f4296ab4aec337483b (diff) |
Add helper to determine if hosted tenant app
3 files changed, 10 insertions, 9 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java index 985fc5fd22e..54521b946dd 100644 --- a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java +++ b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java @@ -11,6 +11,7 @@ import com.yahoo.config.application.api.DeployLogger; import com.yahoo.config.application.api.FileRegistry; import com.yahoo.config.application.api.UnparsedConfigDefinition; import com.yahoo.config.application.api.ValidationOverrides; +import com.yahoo.config.model.ConfigModelContext.ApplicationType; import com.yahoo.config.model.api.ConfigDefinitionRepo; import com.yahoo.config.model.api.ContainerEndpoint; import com.yahoo.config.model.api.EndpointCertificateSecrets; @@ -28,11 +29,11 @@ import com.yahoo.config.model.test.MockApplicationPackage; import com.yahoo.config.provision.DockerImage; import com.yahoo.config.provision.Zone; import com.yahoo.io.IOUtils; -import com.yahoo.search.query.profile.QueryProfileRegistry; import com.yahoo.schema.Application; +import com.yahoo.schema.ApplicationBuilder; import com.yahoo.schema.RankProfileRegistry; import com.yahoo.schema.Schema; -import com.yahoo.schema.ApplicationBuilder; +import com.yahoo.search.query.profile.QueryProfileRegistry; import com.yahoo.vespa.config.ConfigDefinition; import com.yahoo.vespa.config.ConfigDefinitionBuilder; import com.yahoo.vespa.config.ConfigDefinitionKey; @@ -302,6 +303,11 @@ public class DeployState implements ConfigDefinitionStore { public Optional<Reindexing> reindexing() { return Optional.ofNullable(reindexing); } + public boolean isHostedTenantApplication(ApplicationType type) { + boolean isTesterApplication = getProperties().applicationId().instance().isTester(); + return isHosted() && type == ApplicationType.DEFAULT && !isTesterApplication; + } + public static class Builder { private ApplicationPackage applicationPackage = MockApplicationPackage.createEmpty(); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java index a57a8fa9e70..f4aa4f649bd 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/UriBindingsValidator.java @@ -12,8 +12,6 @@ import com.yahoo.vespa.model.container.http.Http; import java.util.logging.Level; -import static com.yahoo.config.model.ConfigModelContext.ApplicationType.HOSTED_INFRASTRUCTURE; - /** * Validates URI bindings for filters and handlers * @@ -71,7 +69,7 @@ class UriBindingsValidator extends Validator { } private static boolean isHostedApplication(VespaModel model, DeployState deployState) { - return deployState.isHosted() && model.getAdmin().getApplicationType() != HOSTED_INFRASTRUCTURE; + return deployState.isHostedTenantApplication(model.getAdmin().getApplicationType()); } private static String createErrorMessage(BindingPattern binding, String message) { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java index 85d6c869b5f..d0a03be2869 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java @@ -12,7 +12,6 @@ import com.yahoo.config.application.api.DeployLogger; import com.yahoo.config.application.api.DeploymentInstanceSpec; import com.yahoo.config.application.api.DeploymentSpec; import com.yahoo.config.model.ConfigModelContext; -import com.yahoo.config.model.ConfigModelContext.ApplicationType; import com.yahoo.config.model.api.ApplicationClusterEndpoint; import com.yahoo.config.model.api.ConfigServerSpec; import com.yahoo.config.model.api.ContainerEndpoint; @@ -597,9 +596,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> { } private static boolean isHostedTenantApplication(ConfigModelContext context) { - var deployState = context.getDeployState(); - boolean isTesterApplication = deployState.getProperties().applicationId().instance().isTester(); - return deployState.isHosted() && context.getApplicationType() == ApplicationType.DEFAULT && !isTesterApplication; + return context.getDeployState().isHostedTenantApplication(context.getApplicationType()); } private static void addHostedImplicitHttpIfNotPresent(DeployState deployState, ApplicationContainerCluster cluster) { |