summaryrefslogtreecommitdiffstats
path: root/func/overlord/func_command.py
diff options
context:
space:
mode:
Diffstat (limited to 'func/overlord/func_command.py')
-rw-r--r--func/overlord/func_command.py20
1 files changed, 6 insertions, 14 deletions
diff --git a/func/overlord/func_command.py b/func/overlord/func_command.py
index 90de0fc..794b0ba 100644
--- a/func/overlord/func_command.py
+++ b/func/overlord/func_command.py
@@ -16,29 +16,21 @@ import sys
import command
+import func.module_loader as module_loader
-#FIXME: need a plug-in runtime module loader here
-from cmd_modules import call
-from cmd_modules import show
-from cmd_modules import copyfile
-from cmd_modules import listminions
-from cmd_modules import ping
-from cmd_modules import check
-
-from func.overlord import client
+from func.overlord import client,base_command
class FuncCommandLine(command.Command):
name = "func"
usage = "func [--options] \"hostname glob\" module method [arg1] [arg2] ... "
- subCommandClasses = [
- call.Call, show.Show, copyfile.CopyFile,
- listminions.ListMinions, ping.Ping, check.CheckAction
- ]
+ subCommandClasses = []
def __init__(self):
-
+ modules = module_loader.load_modules('func/overlord/cmd_modules/', base_command.BaseCommand)
+ for x in modules.keys():
+ self.subCommandClasses.append(modules[x].__class__)
command.Command.__init__(self)
def do(self, args):