Support kernel check other than rpm
[bootmanager.git] / source / steps / ValidateNodeInstall.py
index ea64a29..111ba26 100644 (file)
@@ -126,8 +126,8 @@ def Run( vars, log ):
             return -2
 
 
-        
-        one_partition = (ROOT_SIZE == "-1")
+        one_partition = vars['ONE_PARTITION']=='1'
+
         if (not one_partition):
             try:
                 VSERVERS_PATH = "%s/vservers" % SYSIMG_PATH
@@ -151,8 +151,12 @@ def Run( vars, log ):
         if vars['virt'] == 'vs':
             os.stat("%s/boot/kernel-boot" % SYSIMG_PATH)
         else:
-            kversion = os.popen("chroot %s rpm -qa kernel | tail -1 | cut -c 8-" % SYSIMG_PATH).read().rstrip()
-            os.stat("%s/boot/vmlinuz-%s" % (SYSIMG_PATH,kversion))
+            try:
+                kversion = os.popen("chroot %s rpm -qa kernel | tail -1 | cut -c 8-" % SYSIMG_PATH).read().rstrip()
+                os.stat("%s/boot/vmlinuz-%s" % (SYSIMG_PATH,kversion))
+                major_version = int(kversion[0]) # Check if the string looks like a kernel version
+            except:
+                kversion = os.popen("ls -lrt /lib/modules | tail -1 | awk '{print $9;}'").read().rstrip()
     except OSError, e:            
         log.write( "Couldn't locate base kernel (you might be using the stock kernel).\n")
         return -3