aboutsummaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2019-02-14 20:51:33 +0100
committerHarald Musum <musum@verizonmedia.com>2019-02-14 20:51:33 +0100
commit57293e2aa06e8408ee890fbdfe86ae4bb0edbb9c (patch)
tree0828427bb5e5005382ae2740286fcf51d34e14fe /config-model
parent8b87896c867b11d54f26af5878cdfe196b215561 (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')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/xml/ConfigServerContainerModelBuilder.java8
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java6
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(