diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2019-10-07 14:20:16 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2019-10-07 14:20:16 +0200 |
commit | 35ecbbe9dc35169f17535fc40c5f4b0e50d6dc18 (patch) | |
tree | 86257df46e54024b0e51b2bf3465cadf763da8d9 /config-model-api/src | |
parent | 6aea543bbadfe42c0b6a782a2fb4e0e7941ae208 (diff) |
Multiple instances short form
Diffstat (limited to 'config-model-api/src')
2 files changed, 24 insertions, 1 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/application/api/xml/DeploymentSpecXmlReader.java b/config-model-api/src/main/java/com/yahoo/config/application/api/xml/DeploymentSpecXmlReader.java index 5395459b9dc..cb645813290 100644 --- a/config-model-api/src/main/java/com/yahoo/config/application/api/xml/DeploymentSpecXmlReader.java +++ b/config-model-api/src/main/java/com/yahoo/config/application/api/xml/DeploymentSpecXmlReader.java @@ -144,7 +144,8 @@ public class DeploymentSpecXmlReader { List<Endpoint> endpoints = readEndpoints(instanceTag); // Build and return instances with these values - return Arrays.stream(instanceNameString.split("'")) + return Arrays.stream(instanceNameString.split(",")) + .map(name -> name.trim()) .map(name -> new DeploymentInstanceSpec(InstanceName.from(name), steps, upgradePolicy, diff --git a/config-model-api/src/test/java/com/yahoo/config/application/api/DeploymentSpecTest.java b/config-model-api/src/test/java/com/yahoo/config/application/api/DeploymentSpecTest.java index 6497ef074a8..b75801de7ea 100644 --- a/config-model-api/src/test/java/com/yahoo/config/application/api/DeploymentSpecTest.java +++ b/config-model-api/src/test/java/com/yahoo/config/application/api/DeploymentSpecTest.java @@ -175,6 +175,28 @@ public class DeploymentSpecTest { assertTrue(instance2.steps().get(0).deploysTo(Environment.prod, Optional.of(RegionName.from("us-central1")))); } + @Test + public void testMultipleInstancesShortForm() { + StringReader r = new StringReader( + "<deployment version='1.0'>" + + " <instance id='instance1, instance2'>" + // The block checked by assertCorrectFirstInstance + " <test/>" + + " <staging/>" + + " <prod>" + + " <region active='false'>us-east1</region>" + + " <delay hours='3' minutes='30'/>" + + " <region active='true'>us-west1</region>" + + " </prod>" + + " </instance>" + + "</deployment>" + ); + + DeploymentSpec spec = DeploymentSpec.fromXml(r); + + assertCorrectFirstInstance(spec.instance("instance1")); + assertCorrectFirstInstance(spec.instance("instance2")); + } + private void assertCorrectFirstInstance(DeploymentInstanceSpec instance) { assertEquals(5, instance.steps().size()); assertEquals(4, instance.zones().size()); |