From 928f3917664134e21b85291b9776c62769c25ff3 Mon Sep 17 00:00:00 2001 From: Steve 'Ashcrow' Milner Date: Sat, 26 Jan 2008 19:38:39 -0500 Subject: A bit of clean up along with a note on flatten. --- func/minion/modules/rpms.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'func/minion') diff --git a/func/minion/modules/rpms.py b/func/minion/modules/rpms.py index 34c4d50..ae26cb4 100644 --- a/func/minion/modules/rpms.py +++ b/func/minion/modules/rpms.py @@ -20,23 +20,25 @@ class RpmModule(func_module.FuncModule): def inventory(self, flatten=True): """ Returns information on all installed packages. - By default, 'flatten' is passed in as True, which makes printouts very clean in diffs - for use by func-inventory. If you are writting another software application, using flatten=False will - prevent the need to parse the returns. + By default, 'flatten' is passed in as True, which makes printouts very + clean in diffs for use by func-inventory. If you are writting another + software application, using flatten=False will prevent the need to + parse the returns. """ + # I have not been able to get flatten=False to work if there + # is more than 491 entries in the dict -- ashcrow ts = rpm.TransactionSet() mi = ts.dbMatch() results = [] for hdr in mi: name = hdr['name'] - epoch = hdr['epoch'] - if epoch is None: - epoch = 0 + epoch = (hdr['epoch'] or 0) version = hdr['version'] release = hdr['release'] arch = hdr['arch'] if flatten: - results.append("%s %s %s %s %s" % (name,epoch,version,release,arch)) + results.append("%s %s %s %s %s" % (name, epoch, version, + release, arch)) else: - results.append([name,epoch,version,release,arch]) + results.append([name, epoch, version, release, arch]) return results -- cgit From f099101e300bf7e23ccddcccb4dad73114a834f0 Mon Sep 17 00:00:00 2001 From: John Eckersberg Date: Mon, 28 Jan 2008 12:51:27 -0500 Subject: Load classes out of __init__ files Conflicts: --- func/minion/module_loader.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'func/minion') diff --git a/func/minion/module_loader.py b/func/minion/module_loader.py index 37bc515..3068ea8 100755 --- a/func/minion/module_loader.py +++ b/func/minion/module_loader.py @@ -32,9 +32,6 @@ def module_walker(topdir): for filename in files: # ASSUMPTION: all module files will end with .py, .pyc, .pyo if filename[-3:] == ".py" or filename[-4:] == ".pyc" or filename[-4:] == ".pyo": - # we don't really care about __init__ files, though we do requure them - if filename[:8] == "__init__": - continue # the normpath is important, since we eventually replace /'s with .'s # in the module name, and foo..bar doesnt work -akl module_files.append(os.path.normpath("%s/%s" % (root, filename))) @@ -59,9 +56,10 @@ def load_modules(blacklist=None): module_name_part = fn[len(module_file_path):] dirname, basename = os.path.split(module_name_part) - if basename == "__init__.py": - continue - if basename[-3:] == ".py": + if basename[:8] == "__init__": + modname = dirname + dirname = "" + elif basename[-3:] == ".py": modname = basename[:-3] elif basename[-4:] in [".pyc", ".pyo"]: modname = basename[:-4] -- cgit