diff options
author | Valerij Fredriksen <freva@users.noreply.github.com> | 2023-03-01 13:37:56 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-01 13:37:56 +0100 |
commit | 7cea54e06359f16427c828b813dee53d6281a42f (patch) | |
tree | f706fa9c185652ec35c5c7d983926e425a64585d /configserver | |
parent | 0cd4987fe7c9ff09d49b0020c52efd0cd5aee375 (diff) | |
parent | 3460fa35f934f5bd37436b31396c01d26cff4de0 (diff) |
Merge pull request #26246 from vespa-engine/bratseth/cluster-info
Pass ClusterInfo
Diffstat (limited to 'configserver')
3 files changed, 12 insertions, 2 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java index ffafbb8827e..06c3aa5330e 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java @@ -270,8 +270,7 @@ public class SessionPreparer { // Validate after doing our own preprocessing on these two files ApplicationMetaData meta = applicationPackage.getMetaData(); InstanceName instance = meta.getApplicationId().instance(); - Tags tags = applicationPackage.getDeployment().map(new DeploymentSpecXmlReader(false)::read) - .flatMap(spec -> spec.instance(instance)) + Tags tags = applicationPackage.getDeploymentSpec().instance(instance) .map(DeploymentInstanceSpec::tags) .orElse(Tags.empty()); if (servicesXml.exists()) { diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java index fbf14fbdb8c..6d6901136a6 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackage.java @@ -6,6 +6,7 @@ import com.yahoo.component.Version; import com.yahoo.config.application.api.ApplicationFile; import com.yahoo.config.application.api.ApplicationMetaData; import com.yahoo.config.application.api.ComponentInfo; +import com.yahoo.config.application.api.DeploymentSpec; import com.yahoo.config.application.api.FileRegistry; import com.yahoo.config.application.api.UnparsedConfigDefinition; import com.yahoo.config.codegen.DefParser; @@ -55,6 +56,8 @@ public class ZKApplicationPackage extends AbstractApplicationPackage { public static final String allocatedHostsNode = "allocatedHosts"; private final ApplicationMetaData metaData; + private DeploymentSpec deploymentSpec = null; + public ZKApplicationPackage(AddFileInterface fileManager, Curator curator, Path sessionPath, int maxNodeSize) { verifyAppPath(curator, sessionPath); zkApplication = new ZKApplication(curator, sessionPath, maxNodeSize); @@ -73,6 +76,12 @@ public class ZKApplicationPackage extends AbstractApplicationPackage { return Optional.of(readAllocatedHosts()); } + @Override + public DeploymentSpec getDeploymentSpec() { + if (deploymentSpec != null) return deploymentSpec; + return deploymentSpec = parseDeploymentSpec(false); + } + /** * Reads allocated hosts at the given node. * diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java index 8f11e171ebe..f3a2c42852f 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java @@ -101,7 +101,9 @@ public class ZKApplicationPackageTest { assertEquals("6.0.1", readInfo.getHosts().iterator().next().version().get().toString()); assertEquals(dockerImage, readInfo.getHosts().iterator().next().dockerImageRepo().get().asString()); assertTrue(zkApp.getDeployment().isPresent()); + assertFalse(zkApp.getDeploymentSpec().isEmpty()); assertEquals("mydisc", DeploymentSpec.fromXml(zkApp.getDeployment().get()).requireInstance("default").globalServiceId().get()); + assertEquals("mydisc", zkApp.getDeploymentSpec().requireInstance("default").globalServiceId().get()); } private void feed(com.yahoo.vespa.curator.Curator zk, File dirToFeed) throws IOException { |