diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-08-09 09:34:15 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-08-09 09:34:15 +0200 |
commit | 3f3a30bbc9360fe9630b77fca393cb5be574d248 (patch) | |
tree | 3e21689c04922b3468cdb42fe8ad6c118ebdd67c /zkfacade | |
parent | e09bb9cd8d69b3008cc1ea95e2ef4c9aa85182af (diff) |
Create directory before writing
Diffstat (limited to 'zkfacade')
-rw-r--r-- | zkfacade/src/main/java/com/yahoo/vespa/zookeeper/ZooKeeperServer.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/zkfacade/src/main/java/com/yahoo/vespa/zookeeper/ZooKeeperServer.java b/zkfacade/src/main/java/com/yahoo/vespa/zookeeper/ZooKeeperServer.java index 352635ac920..405afcd3c39 100644 --- a/zkfacade/src/main/java/com/yahoo/vespa/zookeeper/ZooKeeperServer.java +++ b/zkfacade/src/main/java/com/yahoo/vespa/zookeeper/ZooKeeperServer.java @@ -9,6 +9,7 @@ import com.yahoo.component.AbstractComponent; import com.yahoo.log.LogLevel; import static com.yahoo.vespa.defaults.Defaults.getDefaults; +import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.util.List; @@ -61,9 +62,10 @@ public class ZooKeeperServer extends AbstractComponent implements Runnable { public static ImmutableSet<String> getAllowedClientHostnames() { return allowedClientHostnames; } private void writeConfigToDisk(ZookeeperServerConfig config) { - String cfg = transformConfigToString(config); - try (FileWriter writer = new FileWriter(getDefaults().underVespaHome(config.zooKeeperConfigFile()))) { - writer.write(cfg); + String configFilePath = getDefaults().underVespaHome(config.zooKeeperConfigFile()); + new File(configFilePath).getParentFile().mkdirs(); + try (FileWriter writer = new FileWriter(configFilePath)) { + writer.write(transformConfigToString(config)); writeMyIdFile(config); } catch (IOException e) { throw new RuntimeException("Error writing zookeeper config", e); |