[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