From 3e52d3e21f97af574e8a7e20b50a99b0fb8a0b41 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Wed, 3 Oct 2018 23:11:47 +0200 Subject: Needs deployState after VespaModel is constructed incomplete. --- .../src/main/java/com/yahoo/vespa/model/VespaModel.java | 2 ++ .../vespa/model/container/xml/ContainerModelBuilder.java | 14 +++++++------- .../standalone/StandaloneContainerApplication.java | 2 +- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java index a8e55e99e3b..dc7efefe24b 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java @@ -195,6 +195,8 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri else { // create a model with no services instantiated and the given file distributor this.allocatedHosts = AllocatedHosts.withHosts(hostSystem.getHostSpecs()); this.fileDistributor = fileDistributor; + this.deployState = deployState; + this.deployLogger = deployState.getDeployLogger(); } } 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 570ab06f4fa..7802bd1eb65 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,6 +12,7 @@ import com.yahoo.config.model.api.ConfigServerSpec; import com.yahoo.config.model.application.provider.IncludeDirs; import com.yahoo.config.model.builder.xml.ConfigModelBuilder; import com.yahoo.config.model.builder.xml.ConfigModelId; +import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.config.provision.AthenzService; import com.yahoo.config.provision.Capacity; @@ -23,7 +24,6 @@ import com.yahoo.config.provision.NodeType; import com.yahoo.config.provision.Rotation; import com.yahoo.config.provision.Zone; import com.yahoo.container.jdisc.config.MetricDefaultsConfig; -import com.yahoo.osgi.provider.model.ComponentModel; import com.yahoo.search.rendering.RendererRegistry; import com.yahoo.searchdefinition.derived.RankProfileList; import com.yahoo.text.XML; @@ -152,7 +152,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder { return new ContainerCluster(ancestor, modelContext.getProducerId(), modelContext.getProducerId(), modelContext.getDeployState()); } - }.build(modelContext.getParentProducer(), spec); + }.build(modelContext.getDeployState(), modelContext.getParentProducer(), spec); } private void addClusterContent(ContainerCluster cluster, Element spec, ConfigModelContext context) { @@ -172,7 +172,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder { addStatusHandlers(cluster, context); setDefaultMetricConsumerFactory(cluster); - addHttp(spec, cluster); + addHttp(context.getDeployState(), spec, cluster); addAccessLogs(cluster, spec); addRoutingAliases(cluster, spec, context.getDeployState().zone().environment()); @@ -330,15 +330,15 @@ public class ContainerModelBuilder extends ConfigModelBuilder { } - protected void addHttp(Element spec, ContainerCluster cluster) { + protected final void addHttp(DeployState deployState, Element spec, ContainerCluster cluster) { Element httpElement = XML.getChild(spec, "http"); if (httpElement != null) { - cluster.setHttp(buildHttp(cluster, httpElement)); + cluster.setHttp(buildHttp(deployState, cluster, httpElement)); } } - private Http buildHttp(ContainerCluster cluster, Element httpElement) { - Http http = new HttpBuilder().build(cluster, httpElement); + private Http buildHttp(DeployState deployState, ContainerCluster cluster, Element httpElement) { + Http http = new HttpBuilder().build(deployState, cluster, httpElement); if (networking == Networking.disable) http.removeAllServers(); 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 8d2cd429517..ae7b8356682 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 @@ -243,7 +243,7 @@ public class StandaloneContainerApplication implements Application { Element spec = containerRootElement(applicationPackage); ContainerModel containerModel = newContainerModelBuilder(networkingOption).build(deployState, root, configModelRepo, vespaRoot, spec); - containerModel.getCluster().prepare(); + containerModel.getCluster().prepare(deployState); initializeContainerModel(containerModel, configModelRepo); Container container = first(containerModel.getCluster().getContainers()); -- cgit v1.2.3