Delete IOS ghost files. Bump version to alpha3.

This commit is contained in:
grossmj 2014-05-02 15:38:52 -06:00
parent f9b0f11221
commit f185c4d489
6 changed files with 20 additions and 6 deletions

View File

@ -24,6 +24,7 @@ import os
import base64
import tempfile
import shutil
import glob
from gns3server.modules import IModule
import gns3server.jsonrpc as jsonrpc
@ -207,6 +208,16 @@ class Dynamips(IModule):
self._frame_relay_switches.clear()
self._atm_switches.clear()
# delete ghost files
ghost_files = glob.glob(os.path.join(self._working_dir, "dynamips", "*.ghost"))
for ghost_file in ghost_files:
try:
log.debug("deleting ghost file {}".format(ghost_file))
os.remove(ghost_file)
except OSError as e:
log.warn("could not delete ghost file {}: {}".format(ghost_file, e))
continue
self._hypervisor_manager = None
log.info("dynamips module has been reset")
@ -270,14 +281,14 @@ class Dynamips(IModule):
self._working_dir = request.pop("working_dir")
log.info("this server is local")
else:
self._working_dir = os.path.join(self._projects_dir, request["project_name"])
self._working_dir = os.path.join(self._projects_dir, request["project_name"] + ".gns3")
log.info("this server is remote with working directory path to {}".format(self._working_dir))
self._hypervisor_manager_settings = request
else:
if "project_name" in request:
new_working_dir = os.path.join(self._projects_dir, request["project_name"])
new_working_dir = os.path.join(self._projects_dir, request["project_name"] + ".gns3")
if self._projects_dir != self._working_dir != new_working_dir:
# trick to avoid file locks by Dynamips on Windows

View File

@ -93,6 +93,9 @@ class DynamipsHypervisor(object):
self._uuid = self.send("hypervisor uuid")
# this forces to send the working dir to Dynamips
self.working_dir = self._working_dir
@property
def version(self):
"""

View File

@ -558,7 +558,7 @@ class HypervisorManager(object):
self._host,
port)
log.info("creating new hypervisor {}:{}".format(hypervisor.host, hypervisor.port))
log.info("creating new hypervisor {}:{} with working directory {}".format(hypervisor.host, hypervisor.port, self._working_dir))
hypervisor.start()
self.wait_for_hypervisor(self._host, port)

View File

@ -234,7 +234,7 @@ class IOU(IModule):
new_working_dir = request["working_dir"]
log.info("this server is local with working directory path to {}".format(new_working_dir))
else:
new_working_dir = os.path.join(self._projects_dir, request["project_name"])
new_working_dir = os.path.join(self._projects_dir, request["project_name"] + ".gns3")
log.info("this server is remote with working directory path to {}".format(new_working_dir))
if self._projects_dir != self._working_dir != new_working_dir:
if not os.path.isdir(new_working_dir):

View File

@ -390,7 +390,7 @@ class IOUDevice(object):
try:
self._update_iouyap_config()
command = [self._iouyap, str(self._id + 512)] # iouyap has always IOU ID + 512
command = [self._iouyap, "-q", str(self._id + 512)] # iouyap has always IOU ID + 512
log.info("starting iouyap: {}".format(command))
self._iouyap_stdout_file = os.path.join(self._working_dir, "iouyap.log")
log.info("logging to {}".format(self._iouyap_stdout_file))

View File

@ -23,5 +23,5 @@
# or negative for a release candidate or beta (after the base version
# number has been incremented)
__version__ = "1.0a3.dev3"
__version__ = "1.0-alpha3"
__version_info__ = (1, 0, 0, -99)