diff options
-rw-r--r-- | configserver/src/main/resources/configserver-app/services.xml | 2 | ||||
-rw-r--r-- | standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java | 22 |
2 files changed, 19 insertions, 5 deletions
diff --git a/configserver/src/main/resources/configserver-app/services.xml b/configserver/src/main/resources/configserver-app/services.xml index 8c64bb2cdfb..cacbd45ed8e 100644 --- a/configserver/src/main/resources/configserver-app/services.xml +++ b/configserver/src/main/resources/configserver-app/services.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8" ?> <!-- Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. --> -<services version="1.0" xmlns:preprocess="properties"> +<services version="1.0" xmlns:preprocess="properties" xmlns:deploy="vespa"> <jdisc id="configserver" jetty="true" version="1.0"> <config name="container.handler.threadpool"> <maxthreads>100</maxthreads> <!-- Reduced thread count to minimize memory consumption --> diff --git a/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java b/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java index a61e9fc56b8..f9fe4a02aab 100644 --- a/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java +++ b/standalone-container/src/main/java/com/yahoo/container/standalone/StandaloneContainerApplication.java @@ -9,7 +9,6 @@ import com.google.inject.Key; import com.google.inject.ProvisionException; import com.google.inject.name.Named; import com.google.inject.name.Names; -import com.yahoo.cloud.config.SlobroksConfig; import com.yahoo.collections.Pair; import com.yahoo.config.application.api.ApplicationPackage; import com.yahoo.config.application.api.DeployLogger; @@ -21,10 +20,11 @@ import com.yahoo.config.model.application.provider.FilesApplicationPackage; import com.yahoo.config.model.application.provider.StaticConfigDefinitionRepo; import com.yahoo.config.model.builder.xml.ConfigModelId; import com.yahoo.config.model.builder.xml.XmlHelper; -import com.yahoo.config.model.deploy.DeployProperties; import com.yahoo.config.model.deploy.DeployState; +import com.yahoo.config.provision.Environment; +import com.yahoo.config.provision.RegionName; +import com.yahoo.config.provision.SystemName; import com.yahoo.config.provision.Zone; -import com.yahoo.container.QrConfig; import com.yahoo.container.di.config.SubscriberFactory; import com.yahoo.container.jdisc.ConfiguredApplication; import com.yahoo.io.IOUtils; @@ -236,7 +236,7 @@ public class StandaloneContainerApplication implements Application { DeployLogger logger = new BaseDeployLogger(); FilesApplicationPackage rawApplicationPackage = new FilesApplicationPackage.Builder(applicationPath.toFile()) .includeSourceFiles(true).preprocessedDir(preprocessedApplicationDir).build(); - ApplicationPackage applicationPackage = rawApplicationPackage.preprocess(Zone.defaultZone(), logger); + ApplicationPackage applicationPackage = rawApplicationPackage.preprocess(getZone(), logger); validateApplication(applicationPackage); DeployState deployState = createDeployState(applicationPackage, fileRegistry, logger); @@ -260,6 +260,20 @@ public class StandaloneContainerApplication implements Application { return new Pair<>(root, container); } + private static Zone getZone() { + if (!isConfigServer()) { + return Zone.defaultZone(); + } + CloudConfigInstallVariables cloudConfigVariables = new CloudConfigInstallVariables(); + if (!cloudConfigVariables.hostedVespa().orElse(false)) { + return Zone.defaultZone(); + } + RegionName region = cloudConfigVariables.region().map(RegionName::from).orElseGet(RegionName::defaultName); + Environment environment = cloudConfigVariables.environment().map(Environment::from).orElseGet(Environment::defaultEnvironment); + SystemName system = cloudConfigVariables.system().map(SystemName::from).orElseGet(SystemName::defaultSystem); + return new Zone(system, environment, region); + } + private static DeployState createDeployState(ApplicationPackage applicationPackage, FileRegistry fileRegistry, DeployLogger logger) { DeployState.Builder builder = new DeployState.Builder() .applicationPackage(applicationPackage) |