X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sliver_lxc.py;h=1b1a20c4b58bf10685402363eaeabf7931bd971b;hb=4c941ea3937af717d1c03ba3879774bf20a12e06;hp=d78446e4f10a1274101b588bca3b56d092f29e7d;hpb=e8f37252b7b4a8b57edd954a7ca14e4ed7932d2d;p=nodemanager.git diff --git a/sliver_lxc.py b/sliver_lxc.py index d78446e..1b1a20c 100644 --- a/sliver_lxc.py +++ b/sliver_lxc.py @@ -45,13 +45,15 @@ class Sliver_LXC(sliver_libvirt.Sliver_Libvirt): # check the template exists -- there's probably a better way.. if not os.path.isdir(refImgDir): logger.log('sliver_lxc: %s: ERROR Could not create sliver - reference image %s not found' % (name,vref)) - logger.log('sliver_lxc: %s: ERROR ctd expected reference image in %s'%(name,refImgDir)) + logger.log('sliver_lxc: %s: ERROR Expected reference image in %s'%(name,refImgDir)) return # Snapshot the reference image fs (assume the reference image is in its own # subvolume) command = ['btrfs', 'subvolume', 'snapshot', refImgDir, containerDir] - logger.log_call(command, timeout=15*60) + if not logger.log_call(command, timeout=15*60): + logger.log('sliver_lxc: ERROR Could not create BTRFS snapshot at', containDir) + return command = ['chmod', '755', containerDir] logger.log_call(command, timeout=15*60) @@ -134,15 +136,17 @@ class Sliver_LXC(sliver_libvirt.Sliver_Libvirt): # Destroy libvirt domain dom = conn.lookupByName(name) except: - logger.verbose('sliver_lxc: Domain %s does not exist! UNEXPECTED'%name) - return + logger.verbose('sliver_lxc: Domain %s does not exist!' % name) try: dom.destroy() except: - logger.verbose('sliver_lxc: Domain %s not running... continuing.'%name) + logger.verbose('sliver_lxc: Domain %s not running... continuing.' % name) - dom.undefine() + try: + dom.undefine() + except: + logger.verbose('sliver_lxc: Domain %s is not defined... continuing.' % name) # Remove user after destroy domain to force logout command = ['/usr/sbin/userdel', '-f', '-r', name]