From 73081f287816ea553c6d213649e7e6a8a9bd7d08 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Wed, 29 Dec 2021 14:52:24 +0100 Subject: Add some logging to debug issue sometimes seen when running system tests --- .../provider/FilesApplicationPackage.java | 32 ++++++++++++++-------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'config-application-package/src/main/java/com/yahoo') diff --git a/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java b/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java index 1223f438029..22285e027a1 100644 --- a/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java +++ b/config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java @@ -47,6 +47,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.Reader; import java.io.StringReader; +import java.nio.file.Files; import java.security.MessageDigest; import java.util.ArrayList; import java.util.Arrays; @@ -61,6 +62,7 @@ import java.util.Optional; import java.util.Set; import java.util.logging.Level; import java.util.logging.Logger; +import java.util.stream.Collectors; import static com.yahoo.text.Lowercase.toLowerCase; @@ -600,17 +602,25 @@ public class FilesApplicationPackage implements ApplicationPackage { @Override public ApplicationPackage preprocess(Zone zone, DeployLogger logger) throws IOException { - IOUtils.recursiveDeleteDir(preprocessedDir); - IOUtils.copyDirectory(appDir, preprocessedDir, -1, (dir, name) -> ! name.equals(preprocessed) && - ! name.equals(SERVICES) && - ! name.equals(HOSTS) && - ! name.equals(CONFIG_DEFINITIONS_DIR)); - File servicesFile = validateServicesFile(); - preprocessXML(new File(preprocessedDir, SERVICES), servicesFile, zone); - preprocessXML(new File(preprocessedDir, HOSTS), getHostsFile(), zone); - FilesApplicationPackage preprocessed = fromFile(preprocessedDir, includeSourceFiles); - preprocessed.copyUserDefsIntoApplication(); - return preprocessed; + try { + IOUtils.recursiveDeleteDir(preprocessedDir); + IOUtils.copyDirectory(appDir, preprocessedDir, -1, (dir, name) -> !name.equals(preprocessed) && + !name.equals(SERVICES) && + !name.equals(HOSTS) && + !name.equals(CONFIG_DEFINITIONS_DIR)); + File servicesFile = validateServicesFile(); + preprocessXML(new File(preprocessedDir, SERVICES), servicesFile, zone); + preprocessXML(new File(preprocessedDir, HOSTS), getHostsFile(), zone); + FilesApplicationPackage preprocessed = fromFile(preprocessedDir, includeSourceFiles); + preprocessed.copyUserDefsIntoApplication(); + return preprocessed; + } catch (FileNotFoundException e) { + // TODO: Temporary logging for debugging purposes + log.log(Level.INFO, "File not found. Files in application package dir: " + Files.list(appDir.toPath()) + .map(java.nio.file.Path::toString) + .collect(Collectors.joining(","))); + throw e; + } } private File validateServicesFile() throws IOException { -- cgit v1.2.3