Setting tag NodeManager-1.8-20
[nodemanager.git] / plugins / rawdisk.py
index f81ca26..c222366 100644 (file)
@@ -39,14 +39,13 @@ def get_unused_devices():
             break
         buf = buf.strip()
         fields = re.split(pat, buf)
-        print fields
         dev = fields[-1]
         if not dev.startswith("dm-") and dev.endswith("1") and dev not in in_vg:
             devices.append("/dev/%s" % dev)
     partitions.close()
     return devices
 
-def GetSlivers(plc, data, conf):
+def GetSlivers(data, config=None, plc=None):
     if 'slivers' not in data: 
         logger.log("sliverauth: getslivers data lack's sliver information. IGNORING!")
         return
@@ -59,9 +58,14 @@ def GetSlivers(plc, data, conf):
                 for i in devices:
                     st = os.stat(i)
                     path = "/vservers/%s%s" % (sliver['name'], i)
+                    if os.path.exists(path):
+                        # should check whether its the proper type of device
+                        continue
+                    
                     logger.log("Copying %s to %s" % (i, path))
                     try:
-                        os.unlink(path)
+                        if os.path.exists(path):
+                            os.unlink(path)
                     except:
                         pass
                     os.mknod(path, st.st_mode, st.st_rdev)