summaryrefslogtreecommitdiffstats
path: root/server/module_loader.py
diff options
context:
space:
mode:
authorRobin Norwood <rnorwood@redhat.com>2007-09-25 10:33:03 -0400
committerRobin Norwood <rnorwood@redhat.com>2007-09-25 10:33:03 -0400
commit5024f7f62ff32345660fae783ac7a97d506fe1da (patch)
treef27c302f2593ccd8517730a0d7d45e9832824b00 /server/module_loader.py
parent7d543b6cf1d721c2e9f7ed88a230172870a9f558 (diff)
downloadfunc-5024f7f62ff32345660fae783ac7a97d506fe1da.tar.gz
func-5024f7f62ff32345660fae783ac7a97d506fe1da.tar.xz
func-5024f7f62ff32345660fae783ac7a97d506fe1da.zip
Renamed server to minion and client to overlord
Diffstat (limited to 'server/module_loader.py')
-rwxr-xr-xserver/module_loader.py104
1 files changed, 0 insertions, 104 deletions
diff --git a/server/module_loader.py b/server/module_loader.py
deleted file mode 100755
index 137625c..0000000
--- a/server/module_loader.py
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/usr/bin/python
-
-## func
-##
-## Copyright 2007, Red Hat, Inc
-## See AUTHORS
-##
-## This software may be freely redistributed under the terms of the GNU
-## general public license.
-##
-## You should have received a copy of the GNU General Public License
-## along with this program; if not, write to the Free Software
-## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-##
-##
-
-
-import distutils.sysconfig
-import os
-import sys
-import glob
-from rhpl.translate import _, N_, textdomain, utf8
-
-
-def module_walker(topdir):
- module_files = []
- for root, dirs, files in os.walk(topdir):
- # we should get here for each subdir
- 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 (since we what?! -RN)
- module_files.append(os.path.normpath("%s/%s" % (root, filename)))
-
-
- return module_files
-
-def load_modules(blacklist=None):
-
- module_file_path="%s/func/server/modules/" % distutils.sysconfig.get_python_lib()
- mod_path="%s/func/server/" % distutils.sysconfig.get_python_lib()
-
- sys.path.insert(0, mod_path)
- mods = {}
-
- filenames = module_walker(module_file_path)
-
- # FIXME: this is probably more complicated than it needs to be -akl
- for fn in filenames:
- # aka, everything after the module_file_path
- 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":
- modname = basename[:-3]
- elif basename[-4:] in [".pyc", ".pyo"]:
- modname = basename[:-4]
-
- pathname = modname
- if dirname != "":
- pathname = "%s/%s" % (dirname, modname)
-
- mod_imp_name = pathname.replace("/", ".")
-
- if mods.has_key(mod_imp_name):
- # If we've already imported mod_imp_name, don't import it again
- continue
-
- try:
- blip = __import__("modules.%s" % ( mod_imp_name), globals(), locals(), [mod_imp_name])
- if not hasattr(blip, "register_rpc"):
- errmsg = _("%(module_path)s%(modname)s module not a proper module")
- print errmsg % {'module_path': module_file_path, 'modname':mod_imp_name}
- continue
- mods[mod_imp_name] = blip
- except ImportError, e:
- # A module that raises an ImportError is (for now) simply not loaded.
- errmsg = _("Could not load %s module: %s")
- print errmsg % (mod_imp_name, e)
-
- continue
-
- return mods
-
-
-if __name__ == "__main__":
-
- module_file_path = "/usr/lib/python2.5/site-packages/func/server/modules/"
- bar = module_walker(module_file_path)
- print bar
- for f in bar:
- print f
- print os.path.basename(f)
- print os.path.split(f)
- g = f[len(module_file_path):]
- print g
- print os.path.split(g)
-
- print load_modules()