diff options
author | Harald Musum <musum@yahooinc.com> | 2023-10-17 13:40:03 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-17 13:40:03 +0200 |
commit | 0ed392e4dbf0986cc9823957bcc511817e17da44 (patch) | |
tree | ca595513f1d01461308b9b3e027def8a7084e126 /config-model/src | |
parent | d82eefec840e49c196ca843cceeae6fb91c71b9f (diff) |
Revert "Use actual files in application package to validate file/directory in…"
Diffstat (limited to 'config-model/src')
3 files changed, 9 insertions, 43 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java index f434d056bfc..9821f3b9568 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java @@ -166,8 +166,7 @@ public final class ApplicationContainerCluster extends ContainerCluster<Applicat UserConfiguredFiles files = new UserConfiguredFiles(deployState.getFileRegistry(), deployState.getDeployLogger(), deployState.featureFlags(), - userConfiguredUrls, - deployState.getApplicationPackage()); + userConfiguredUrls); for (Component<?, ?> component : getAllComponents()) { files.register(component); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFiles.java b/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFiles.java index b10da29ee04..47ae2f40414 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFiles.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFiles.java @@ -3,8 +3,6 @@ package com.yahoo.vespa.model.filedistribution; import com.yahoo.config.FileReference; import com.yahoo.config.ModelReference; -import com.yahoo.config.application.api.ApplicationFile; -import com.yahoo.config.application.api.ApplicationPackage; import com.yahoo.config.application.api.DeployLogger; import com.yahoo.config.application.api.FileRegistry; import com.yahoo.config.model.api.ModelContext; @@ -39,17 +37,14 @@ public class UserConfiguredFiles implements Serializable { private final DeployLogger logger; private final UserConfiguredUrls userConfiguredUrls; private final String unknownConfigDefinition; - private final ApplicationPackage applicationPackage; public UserConfiguredFiles(FileRegistry fileRegistry, DeployLogger logger, ModelContext.FeatureFlags featureFlags, - UserConfiguredUrls userConfiguredUrls, - ApplicationPackage applicationPackage) { + UserConfiguredUrls userConfiguredUrls) { this.fileRegistry = fileRegistry; this.logger = logger; this.userConfiguredUrls = userConfiguredUrls; this.unknownConfigDefinition = featureFlags.unknownConfigDefinition(); - this.applicationPackage = applicationPackage; } /** @@ -160,8 +155,8 @@ public class UserConfiguredFiles implements Serializable { path = Path.fromString(builder.getValue()); } - ApplicationFile file = applicationPackage.getFile(path); - if (file.isDirectory() && (file.listFiles() == null || file.listFiles().isEmpty())) + File file = path.toFile(); + if (file.isDirectory() && (file.listFiles() == null || file.listFiles().length == 0)) throw new IllegalArgumentException("Directory '" + path.getRelative() + "' is empty"); FileReference reference = registeredFiles.get(path); diff --git a/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java b/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java index 92fb89a5c4c..523b0e74be1 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/UserConfiguredFilesTest.java @@ -9,7 +9,6 @@ import com.yahoo.config.application.api.FileRegistry; import com.yahoo.config.model.application.provider.BaseDeployLogger; import com.yahoo.config.model.deploy.TestProperties; import com.yahoo.config.model.producer.UserConfigRepo; -import com.yahoo.config.model.test.MockApplicationPackage; import com.yahoo.config.model.test.MockRoot; import com.yahoo.vespa.config.ConfigDefinition; import com.yahoo.vespa.config.ConfigDefinitionKey; @@ -20,7 +19,6 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.io.TempDir; -import java.io.File; import java.nio.ByteBuffer; import java.nio.file.Path; import java.util.HashMap; @@ -71,23 +69,12 @@ public class UserConfiguredFilesTest { public String toString() { return export().toString(); } } - private UserConfiguredFiles userConfiguredFiles() { - return new UserConfiguredFiles(fileRegistry, - new BaseDeployLogger(), - new TestProperties(), - new ApplicationContainerCluster.UserConfiguredUrls(), - new MockApplicationPackage.Builder().build()); - } - private UserConfiguredFiles userConfiguredFiles(File root, com.yahoo.path.Path path) { + private UserConfiguredFiles userConfiguredFiles() { return new UserConfiguredFiles(fileRegistry, new BaseDeployLogger(), new TestProperties(), - new ApplicationContainerCluster.UserConfiguredUrls(), - new MockApplicationPackage.Builder() - .withRoot(root) - .withFiles(Map.of(path, "")) - .build()); + new ApplicationContainerCluster.UserConfiguredUrls()); } @BeforeEach @@ -302,31 +289,16 @@ public class UserConfiguredFilesTest { } @Test - void require_that_using_empty_dir_fails(@TempDir Path tempDir) { - String relativeTempDir = tempDir.toString().substring(tempDir.toString().lastIndexOf("target") + 7); + void require_that_using_empty_dir_gives_sane_error_message(@TempDir Path tempDir) { + String relativeTempDir = tempDir.toString().substring(tempDir.toString().lastIndexOf("target")); try { def.addPathDef("pathVal"); builder.setField("pathVal", relativeTempDir); fileRegistry.pathToRef.put(relativeTempDir, new FileReference("bazshash")); - userConfiguredFiles(tempDir.toFile().getParentFile(), - com.yahoo.path.Path.fromString(tempDir.toFile().getAbsolutePath())).register(producer); - fail("Should have thrown exception"); - } catch (IllegalArgumentException e) { - assertEquals("Invalid config in services.xml for 'mynamespace.myname': Directory '" + relativeTempDir + "' is empty", - e.getMessage()); - } - } - - @Test - void require_that_using_non_existing_dir_fails() { - String relativeTempDir = "non-existing"; - try { - def.addPathDef("pathVal"); - builder.setField("pathVal", relativeTempDir); userConfiguredFiles().register(producer); fail("Should have thrown exception"); } catch (IllegalArgumentException e) { - assertEquals("Invalid config in services.xml for 'mynamespace.myname': No such file or directory '" + relativeTempDir + "'", + assertEquals("Invalid config in services.xml for 'mynamespace.myname': Directory '" + relativeTempDir + "' is empty", e.getMessage()); } } |