get nodeimage kernel version using nodeimage rpm via chroot; this avoids rpm-db versi...
authorsoltesz@opentechinstitute.org <soltesz@opentechinstitute.org>
Thu, 21 Feb 2013 22:12:32 +0000 (17:12 -0500)
committersoltesz@opentechinstitute.org <soltesz@opentechinstitute.org>
Thu, 21 Feb 2013 22:12:32 +0000 (17:12 -0500)
source/steps/ChainBootNode.py
source/steps/ValidateNodeInstall.py

index 94c3e27..4c2149a 100644 (file)
@@ -150,7 +150,8 @@ def Run( vars, log ):
         option = 'smp'
 
     log.write( "Copying kernel and initrd for booting.\n" )
-    kversion = os.popen('rpm -r /tmp/mnt/sysimg -qa kernel | tail -1 | cut -c 8-').read().rstrip()
+    # Use chroot to call rpm, b/c the bootimage&nodeimage rpm-versions may not work together
+    kversion = os.popen("chroot %s rpm -qa kernel | tail -1 | cut -c 8-" % SYSIMG_PATH).read().rstrip()
 
     utils.sysexec( "cp %s/boot/vmlinuz-%s /tmp/kernel" % (SYSIMG_PATH,kversion), log )
     utils.sysexec( "cp %s/boot/initramfs-%s.img /tmp/initrd" % (SYSIMG_PATH,kversion), log )
index 5f63598..2ca2b7a 100644 (file)
@@ -137,7 +137,8 @@ def Run( vars, log ):
     # these 2 links are created by our kernel's post-install scriplet
     log.write("Checking for a custom kernel\n")
     try:
-        kversion = os.popen('rpm -r /tmp/mnt/sysimg -qa kernel | tail -1 | cut -c 8-').read().rstrip()
+        # Use chroot to call rpm, b/c the bootimage&nodeimage rpm-versions may not work together
+        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))
     except OSError, e:            
         log.write( "Couldn't locate base kernel (you might be using the stock kernel).\n")