[Erp5-report] r33883 luke - /erp5/trunk/utils/erp5.timmy/src/erp5/timmy/timmy.py

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Mar 18 18:19:57 CET 2010


Author: luke
Date: Thu Mar 18 18:19:55 2010
New Revision: 33883

URL: http://svn.erp5.org?rev=33883&view=rev
Log:
 - id of item and partition is required
 - partition id is used to communicate with server
 - item id is used locally

Modified:
    erp5/trunk/utils/erp5.timmy/src/erp5/timmy/timmy.py

Modified: erp5/trunk/utils/erp5.timmy/src/erp5/timmy/timmy.py
URL: http://svn.erp5.org/erp5/trunk/utils/erp5.timmy/src/erp5/timmy/timmy.py?rev=33883&r1=33882&r2=33883&view=diff
==============================================================================
--- erp5/trunk/utils/erp5.timmy/src/erp5/timmy/timmy.py [utf8] (original)
+++ erp5/trunk/utils/erp5.timmy/src/erp5/timmy/timmy.py [utf8] Thu Mar 18 18:19:55 2010
@@ -166,10 +166,11 @@
 
 class Partition(object):
   # generic
-  def __init__(self, partition_id, partition_type):
+  def __init__(self, partition_id, item_id, partition_type):
+    self.item_id = item_id
     self.partition_id = partition_id
     self.partition_type = partition_type.replace(' ', '')
-    getattr(self, '%s' % self.partition_type)(partition_id)
+    getattr(self, '%s' % self.partition_type)(item_id)
 
   def install(self):
     return getattr(self, 'install_%s' % self.partition_type)()
@@ -185,7 +186,7 @@
 
   # Specific code - candidates for plugins
   # Mysql Database
-  def MysqlDatabase(self, partition_id):
+  def MysqlDatabase(self, item_id):
     pass
 
   def install_MysqlDatabase(self):
@@ -201,7 +202,7 @@
     return 'reportError', 'NotImplemented'
 
   # Mysql Server
-  def MysqlServer(self, partition_id):
+  def MysqlServer(self, item_id):
     self.control_script = SUPERVISORCTL
 
   def install_MysqlServer(self):
@@ -217,7 +218,7 @@
     return self.getPartitionState_Supervised('mysql')
 
   # Conversion Server
-  def ConversionServer(self, partition_id):
+  def ConversionServer(self, item_id):
     self.control_script = SUPERVISORCTL
 
   def install_ConversionServer(self):
@@ -248,8 +249,8 @@
     return self.getPartitionState_Supervised('oood')
 
   # Zope Instance related
-  def ZopeInstance(self, partition_id):
-    self.control_script = os.path.join('var', partition_id, 'bin', 'zopectl')
+  def ZopeInstance(self, item_id):
+    self.control_script = os.path.join('var', item_id, 'bin', 'zopectl')
 
   def _zopectl_subprocess(self, action):
     popen = subprocess.Popen([self.control_script, action],
@@ -270,7 +271,7 @@
   def start_ZopeInstance(self):
     if self.getPartitionState()[0] == 'started':
       return 'reportStarted', ''
-    logging.info('Starting instance %s' % self.partition_id)
+    logging.info('Starting instance %s' % self.item_id)
     (result_std, result_err, returncode) = self._zopectl_subprocess('start')
     if returncode:
       return 'reportError', 'failed to start'
@@ -279,14 +280,14 @@
   def stop_ZopeInstance(self):
     if self.getPartitionState()[0] == 'stopped':
       return 'reportStopped', ''
-    logging.info('Stopping instance %s' % self.partition_id)
+    logging.info('Stopping instance %s' % self.item_id)
     (result_std, result_err, returncode) = self._zopectl_subprocess('stop')
     if returncode:
       return 'reportError', 'failed to stop'
     return 'reportStopping', ''
 
   def getPartitionState_ZopeInstance(self):
-    logging.info('Fetching status of instance %s' % self.partition_id)
+    logging.info('Fetching status of instance %s' % self.item_id)
     (result_std, result_err, returncode) = self._zopectl_subprocess('status')
     if result_std.startswith('program running'):
       return 'started', ''
@@ -366,7 +367,8 @@
     # stop
     # switch to special management
     # start
-    partition = Partition(partition_dict['ID'], partition_dict['TYPE'])
+    partition = Partition(partition_dict['PARTITION_ID'],
+        partition_dict['ID'], partition_dict['TYPE'])
     switcher_dict = dict(
         start = 'manageStart',
         stop = 'manageStop',




More information about the Erp5-report mailing list