only list type explorers if there are any; only transfer type explorers if there are ant

Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
This commit is contained in:
Steven Armstrong 2011-10-13 17:05:34 +02:00
parent d02b8d9d30
commit 08d98ac389

View file

@ -95,14 +95,18 @@ class Explorer(object):
def list_type_explorer_names(self, cdist_type): def list_type_explorer_names(self, cdist_type):
"""Return a list of explorer names for the given type.""" """Return a list of explorer names for the given type."""
source = os.path.join(self.local.type_path, cdist_type.explorer_path) source = os.path.join(self.local.type_path, cdist_type.explorer_path)
return os.listdir(source) try:
return os.listdir(source)
except EnvironmentError:
return []
def transfer_type_explorers(self, cdist_type): def transfer_type_explorers(self, cdist_type):
"""Transfer the type explorers for the given type to the remote side.""" """Transfer the type explorers for the given type to the remote side."""
source = os.path.join(self.local.type_path, cdist_type.explorer_path) if cdist_type.explorers:
destination = os.path.join(self.remote.type_path, cdist_type.explorer_path) source = os.path.join(self.local.type_path, cdist_type.explorer_path)
self.remote.mkdir(destination) destination = os.path.join(self.remote.type_path, cdist_type.explorer_path)
self.remote.transfer(source, destination) self.remote.mkdir(destination)
self.remote.transfer(source, destination)
def transfer_object_parameters(self, cdist_object): def transfer_object_parameters(self, cdist_object):
"""Transfer the parameters for the given object to the remote side.""" """Transfer the parameters for the given object to the remote side."""