summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rwxr-xr-xbin/ryu-manager11
-rw-r--r--ryu/utils.py10
2 files changed, 15 insertions, 6 deletions
diff --git a/bin/ryu-manager b/bin/ryu-manager
index 43e0cba4..bb945570 100755
--- a/bin/ryu-manager
+++ b/bin/ryu-manager
@@ -1,6 +1,6 @@
#!/usr/bin/env python
#
-# Copyright (C) 2011 Nippon Telegraph and Telephone Corporation.
+# Copyright (C) 2011, 2012 Nippon Telegraph and Telephone Corporation.
# Copyright (C) 2011 Isaku Yamahata <yamahata at valinux co jp>
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -35,17 +35,18 @@ from ryu.controller import controller
FLAGS = gflags.FLAGS
gflags.DEFINE_multistring('app_lists',
- ['ryu.app.simple_isolation',
- 'ryu.app.rest',
- ],
+ [],
'application module name to run')
def main():
utils.find_flagfile()
- _args = FLAGS(sys.argv)
+ args = FLAGS(sys.argv)
log.init_log()
+ if len(args) > 1:
+ FLAGS.app_lists += args[1:]
+
app_mgr = AppManager()
app_mgr.load_apps(FLAGS.app_lists)
contexts = app_mgr.create_contexts()
diff --git a/ryu/utils.py b/ryu/utils.py
index 6dd8c520..065672e2 100644
--- a/ryu/utils.py
+++ b/ryu/utils.py
@@ -24,7 +24,15 @@ LOG = logging.getLogger('ryu.utils')
def import_module(modname):
- __import__(modname)
+ try:
+ __import__(modname)
+ except:
+ sys.path.append(os.path.dirname(os.path.abspath(modname)))
+ name = os.path.basename(modname)
+ if name.endswith('.py'):
+ name = name[:-3]
+ __import__(name)
+ return sys.modules[name]
return sys.modules[modname]