[Erp5-report] r45965 arnaud.fontaine - in /slapos/trunk/util: slapos.tool.nosqltester_manag...

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Jul 5 18:32:48 CEST 2011


Author: arnaud.fontaine
Date: Tue Jul  5 18:32:47 2011
New Revision: 45965

URL: http://svn.erp5.org?rev=45965&view=rev
Log:
Fix arguments parsing with argparse.

Modified:
    slapos/trunk/util/slapos.tool.nosqltester_manager.kumo/src/slapos/tool/nosqltester_manager/kumo/__init__.py
    slapos/trunk/util/slapos.tool.nosqltester_manager/src/slapos/tool/nosqltester_manager/__init__.py

Modified: slapos/trunk/util/slapos.tool.nosqltester_manager.kumo/src/slapos/tool/nosqltester_manager/kumo/__init__.py
URL: http://svn.erp5.org/slapos/trunk/util/slapos.tool.nosqltester_manager.kumo/src/slapos/tool/nosqltester_manager/kumo/__init__.py?rev=45965&r1=45964&r2=45965&view=diff
==============================================================================
--- slapos/trunk/util/slapos.tool.nosqltester_manager.kumo/src/slapos/tool/nosqltester_manager/kumo/__init__.py [utf8] (original)
+++ slapos/trunk/util/slapos.tool.nosqltester_manager.kumo/src/slapos/tool/nosqltester_manager/kumo/__init__.py [utf8] Tue Jul  5 18:32:47 2011
@@ -33,8 +33,8 @@ from slapos.tool.nosqltester_manager imp
 
 class KumoTesterManager(NoSQLTesterManager):
 
-  def __init__(self, *args):
-    NoSQLTesterManager.__init__(self, *args)
+  def __init__(self):
+    NoSQLTesterManager.__init__(self)
     
     self.node_type = "server"
     self.host_address = parameter_dict['address']
@@ -43,7 +43,7 @@ class KumoTesterManager(NoSQLTesterManag
     self.computer_guid_list = self.computer_partition.getConnectionParameter('computer_guid_list').split(':')
 
   def _add_parser_arguments(self, parser):
-    NoSQLTesterManager._add_parser_arguments(parser)
+    NoSQLTesterManager._add_parser_arguments(self, parser)
     parser.add_argument('nb_thread', help="Nb of memstrike's thread")
     parser.add_argument('nb_request', help="Nb of memstrike's request")
 

Modified: slapos/trunk/util/slapos.tool.nosqltester_manager/src/slapos/tool/nosqltester_manager/__init__.py
URL: http://svn.erp5.org/slapos/trunk/util/slapos.tool.nosqltester_manager/src/slapos/tool/nosqltester_manager/__init__.py?rev=45965&r1=45964&r2=45965&view=diff
==============================================================================
--- slapos/trunk/util/slapos.tool.nosqltester_manager/src/slapos/tool/nosqltester_manager/__init__.py [utf8] (original)
+++ slapos/trunk/util/slapos.tool.nosqltester_manager/src/slapos/tool/nosqltester_manager/__init__.py [utf8] Tue Jul  5 18:32:47 2011
@@ -49,7 +49,7 @@ class NoSQLTesterManager(object):
   NoSQLTesterManager class.
   """
   
-  def __init__(self, *args):
+  def __init__(self):
     """
     :func:`__init__` method of the NoSQLTester.
     
@@ -66,11 +66,10 @@ class NoSQLTesterManager(object):
       
     """
     parameter_dict = vars(self._parse_arguments(argparse.ArgumentParser(
-    description='Manage scalability tester(s).',
-    # When adding arguments in the subclass having the same name, just
-    # override it
-    conflict_handler='resolve'), args[2:]))
-
+          description='Manage scalability tester(s).',
+          # When adding arguments  in the subclass having the  same name, just
+          # override it
+          conflict_handler='resolve')))
     
     self.log_directory = parameter_dict['report_directory']
     self.work_directory = os.path.split(os.path.split(self.log_directory)[0])[0]
@@ -110,9 +109,6 @@ class NoSQLTesterManager(object):
     self.logger.addHandler(file_handler)
 
   def _add_parser_arguments(self, parser):
-    parser = argparse.ArgumentParser(description='',
-                                     conflict_handler='resolve')
-
     parser.add_argument('--address', '-a', default='127.0.0.1',
                         help='Manager IP address')
 
@@ -147,9 +143,9 @@ class NoSQLTesterManager(object):
     parser.add_argument('computer_id', help='Computer ID')
     parser.add_argument('computer_partition_id', help='Computer Partition ID')
 
-  def _parse_arguments(self, parser, *args):
+  def _parse_arguments(self, parser):
     self._add_parser_arguments(parser)
-    return parser.parse_args(args)
+    return parser.parse_args()
 
   def default_init(self):
     """
@@ -428,10 +424,16 @@ def main():
   sys.modules[__name__].__file__ = get_distribution(__name__).location + \
                         '/slapos/tool/nosqltester_manager/__init__.pyc'
 
-  entry_point = iter_entry_points(group='slapos.tool.nosqltester_manager.plugin', name=sys.argv[1]).next()
+  try:
+    plugin_name = sys.argv.pop(1)
+  except IndexError:
+    raise RuntimeError, "ERROR: Plugin name required"
+
+  entry_point = iter_entry_points(group='slapos.tool.nosqltester_manager.plugin',
+                                  name=plugin_name).next()
   plugin_class = entry_point.load()
-  scheduler = plugin_class(sys.argv)
 
+  scheduler = plugin_class()
   scheduler.default_init()
 
   r, w = os.pipe()



More information about the Erp5-report mailing list