import traceback
import os, os.path
import time
+from threading import BoundedSemaphore
+# the util-vserver-pl module
import vserver
import accounts
import logger
import tools
-from threading import BoundedSemaphore
-
-globalsem = BoundedSemaphore()
# special constant that tells vserver to keep its existing settings
KEEP_LIMIT = vserver.VC_LIM_KEEP
SHELL = '/bin/vsh'
TYPE = 'sliver.VServer'
- _init_disk_info_sem = globalsem
+ _init_disk_info_sem = BoundedSemaphore()
def __init__(self, rec):
name=rec['name']
logger.verbose ('sliver_vs: %s init'%name)
try:
logger.log("sliver_vs: %s: first chance..."%name)
- vserver.VServer.__init__(self, name,logfile='/var/log/nm')
+ vserver.VServer.__init__(self, name,logfile='/var/log/nodemanager')
except Exception, err:
if not isinstance(err, vserver.NoSuchVServer):
# Probably a bad vserver or vserver configuration file
self.destroy(name)
self.create(name, rec['vref'])
logger.log("sliver_vs: %s: second chance..."%name)
- vserver.VServer.__init__(self, name,logfile='/var/log/nm')
+ vserver.VServer.__init__(self, name,logfile='/var/log/nodemanager')
self.keys = ''
self.rspec = {}
file('/vservers/%s/etc/slicefamily' % name, 'w').write(vref)
# set personality: only if needed (if arch's differ)
if tools.root_context_arch() != arch:
- file('/etc/vservers/%s/personality' % name, 'w').write(personality(arch))
+ file('/etc/vservers/%s/personality' % name, 'w').write(personality(arch)+"\n")
logger.log('sliver_vs: %s: set personality to %s'%(name,personality(arch)))
@staticmethod
self.vm_running = False
Sliver_VS._init_disk_info_sem.acquire()
logger.log('sliver_vs: %s: computing disk usage: beginning' % self.name)
+ # init_disk_info is inherited from VServer
try: self.init_disk_info()
finally: Sliver_VS._init_disk_info_sem.release()
logger.log('sliver_vs: %s: computing disk usage: ended' % self.name)