Create a private config file if expected

Fix #217
This commit is contained in:
Julien Duponchelle 2015-06-05 16:23:52 +02:00
parent fff3e1474f
commit 02650fa490

View File

@ -1498,7 +1498,10 @@ class Router(BaseVM):
if self.startup_config or self.private_config:
module_workdir = self.project.module_working_directory(self.manager.module_name.lower())
startup_config_base64, private_config_base64 = yield from self.extract_config()
if self.startup_config and startup_config_base64:
if startup_config_base64:
if not self.startup_config:
self._startup_config = os.path.join("configs", "i{}_startup-config.cfg".format(self._dynamips_id))
try:
config = base64.b64decode(startup_config_base64).decode("utf-8", errors="replace")
config = "!\n" + config.replace("\r", "")
@ -1509,7 +1512,10 @@ class Router(BaseVM):
except (binascii.Error, OSError) as e:
raise DynamipsError("Could not save the startup configuration {}: {}".format(config_path, e))
if self.private_config and private_config_base64:
if private_config_base64:
if not self.private_config:
self._private_config = os.path.join("configs", "i{}_private-config.cfg".format(self._dynamips_id))
try:
config = base64.b64decode(private_config_base64).decode("utf-8", errors="replace")
config = "!\n" + config.replace("\r", "")