summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorHarald Musum <musum@yahoo-inc.com>2016-10-20 09:16:54 +0200
committerAndreas Eriksen <andreer@pvv.ntnu.no>2016-10-20 09:16:54 +0200
commite79632e0ba5419c0d0538e304f1b9b379e9d5fd4 (patch)
tree4226a91948b1bf005fdc805953895fc98ba5264e /config-model
parent90910378997a66eca8dd3f2ee268aa7cd94e122e (diff)
Honor aliases element only in prod (#915)
VESPA-5091
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java7
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java30
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java8
3 files changed, 36 insertions, 9 deletions
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 1eb6e337be6..9c8e0199104 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
@@ -14,6 +14,7 @@ import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.config.provision.Capacity;
import com.yahoo.config.provision.ClusterSpec;
import com.yahoo.config.provision.ClusterMembership;
+import com.yahoo.config.provision.Environment;
import com.yahoo.config.provision.NodeType;
import com.yahoo.container.jdisc.config.MetricDefaultsConfig;
import com.yahoo.search.rendering.RendererRegistry;
@@ -143,7 +144,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> {
addDocumentApi(spec, cluster); // NOTE: Must be done after addSearch
addAccessLogs(cluster, spec);
- addRoutingAliases(cluster, spec);
+ addRoutingAliases(cluster, spec, context.getDeployState().zone().environment());
addNodes(cluster, spec, context);
addClientProviders(spec, cluster);
@@ -159,7 +160,9 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> {
//TODO: cache options.
}
- private void addRoutingAliases(ContainerCluster cluster, Element spec) {
+ private void addRoutingAliases(ContainerCluster cluster, Element spec, Environment environment) {
+ if (environment != Environment.prod) return;
+
Element aliases = XML.getChild(spec, "aliases");
for (Element alias : XML.getChildren(aliases, "service-alias")) {
cluster.serviceAliases().add(XML.getValue(alias));
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java
index 3ea0a9732d6..baa758d4afd 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTest.java
@@ -12,6 +12,9 @@ import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducerRoot;
import com.yahoo.config.model.provision.InMemoryProvisioner;
import com.yahoo.config.model.test.MockApplicationPackage;
+import com.yahoo.config.provision.Environment;
+import com.yahoo.config.provision.RegionName;
+import com.yahoo.config.provision.Zone;
import com.yahoo.container.ComponentsConfig;
import com.yahoo.container.config.StatisticsRequestHandler;
import com.yahoo.container.core.ChainsConfig;
@@ -49,11 +52,7 @@ import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.Matchers.contains;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.hasItem;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.Assert.*;
/**
* @author gjoranv
@@ -507,7 +506,28 @@ public class ContainerModelBuilderTest extends ContainerModelBuilderTestBase {
assertEquals(getContainerCluster("default").getContainers().get(0).getServicePropertyString("servicealiases"), "service1,service2");
assertEquals(getContainerCluster("default").getContainers().get(0).getServicePropertyString("endpointaliases"), "foo1.bar1.com,foo2.bar2.com");
+ }
+
+ @Test
+ public void http_aliases_are_only_honored_in_prod_environment() throws SAXException, IOException {
+ Element clusterElem = DomBuilderTest.parse(
+ "<jdisc id='default' version='1.0'>",
+ " <aliases>",
+ " <service-alias>service1</service-alias>",
+ " <endpoint-alias>foo1.bar1.com</endpoint-alias>",
+ " </aliases>",
+ " <nodes>",
+ " <node hostalias='host1' />",
+ " </nodes>",
+ "</jdisc>");
+
+ DeployState deployState = new DeployState.Builder().zone(new Zone(Environment.dev, RegionName.from("us-east-1"))).build();
+ createModel(root, deployState, clusterElem);
+ assertEquals(0, getContainerCluster("default").serviceAliases().size());
+ assertEquals(0, getContainerCluster("default").endpointAliases().size());
+ assertNull(getContainerCluster("default").getContainers().get(0).getServicePropertyString("servicealiases"));
+ assertNull(getContainerCluster("default").getContainers().get(0).getServicePropertyString("endpointaliases"));
}
@Test
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java
index b5410f332f6..94e1392f4d3 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilderTestBase.java
@@ -31,15 +31,19 @@ public abstract class ContainerModelBuilderTestBase {
" </nodes>";
protected MockRoot root;
- public static void createModel(MockRoot root, Element... containerElems) throws SAXException, IOException {
+ public static void createModel(MockRoot root, DeployState deployState, Element... containerElems) throws SAXException, IOException {
for (Element containerElem : containerElems) {
- ContainerModel model = new ContainerModelBuilder(false, ContainerModelBuilder.Networking.enable).build(DeployState.createTestState(), null, root, containerElem);
+ ContainerModel model = new ContainerModelBuilder(false, ContainerModelBuilder.Networking.enable).build(deployState, null, root, containerElem);
ContainerCluster cluster = model.getCluster();
generateDefaultSearchChains(cluster);
}
root.freezeModelTopology();
}
+ public static void createModel(MockRoot root, Element... containerElems) throws SAXException, IOException {
+ createModel(root, DeployState.createTestState(), containerElems);
+ }
+
private static void generateDefaultSearchChains(ContainerCluster cluster) {
ContainerSearch search = cluster.getSearch();
if (search != null)