diff options
author | Harald Musum <musum@verizonmedia.com> | 2019-02-14 20:51:33 +0100 |
---|---|---|
committer | Harald Musum <musum@verizonmedia.com> | 2019-02-14 20:51:33 +0100 |
commit | 57293e2aa06e8408ee890fbdfe86ae4bb0edbb9c (patch) | |
tree | 0828427bb5e5005382ae2740286fcf51d34e14fe /config-model | |
parent | 8b87896c867b11d54f26af5878cdfe196b215561 (diff) |
Override method for setting status handler for a config server cluster
Need to use CloudConfigOptions to get correct values for config servers.
Trying to set ModelContext properties did not work as apparently we populate
a lot of the values there by default (which does not seem right)
and there are users of those elsewhere, so one would need to duplicate that
mess in StandaloneContainerApplication as well to make it work.
Diffstat (limited to 'config-model')
2 files changed, 11 insertions, 3 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ConfigServerContainerModelBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ConfigServerContainerModelBuilder.java index 6efd2f5b9a7..2f8e9170d9f 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ConfigServerContainerModelBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ConfigServerContainerModelBuilder.java @@ -2,6 +2,7 @@ package com.yahoo.vespa.model.container.xml; import com.yahoo.config.model.ConfigModelContext; +import com.yahoo.vespa.model.container.ContainerCluster; import com.yahoo.vespa.model.container.ContainerModel; import com.yahoo.vespa.model.container.configserver.ConfigserverCluster; import com.yahoo.vespa.model.container.configserver.option.CloudConfigOptions; @@ -29,4 +30,11 @@ public class ConfigServerContainerModelBuilder extends ContainerModelBuilder { cluster.setContainerCluster(model.getCluster()); } + // Need to override this method since we need to use the values in CloudConfigOptions (the ones + // in ConfigModelContext.DeployState.properties are not set) + @Override + protected void addStatusHandlers(ContainerCluster cluster, boolean isHostedVespa) { + super.addStatusHandlers(cluster, options.hostedVespa().orElse(Boolean.FALSE)); + } + } 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 70db63875f5..dc7b960535e 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 @@ -173,7 +173,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> { addDocumentApi(spec, cluster); // NOTE: Must be done after addSearch addDefaultHandlers(cluster); - addStatusHandlers(cluster, context); + addStatusHandlers(cluster, context.getDeployState().isHosted()); addHttp(deployState, spec, cluster); @@ -258,8 +258,8 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> { addDefaultHandlersExceptStatus(cluster); } - private void addStatusHandlers(ContainerCluster cluster, ConfigModelContext configModelContext) { - if (configModelContext.getDeployState().isHosted()) { + protected void addStatusHandlers(ContainerCluster cluster, boolean isHostedVespa) { + if (isHostedVespa) { String name = "status.html"; Optional<String> statusFile = Optional.ofNullable(System.getenv(HOSTED_VESPA_STATUS_FILE_INSTALL_SETTING)); cluster.addComponent( |