import popen2
import shutil
import traceback
+import time
from Exceptions import *
import utils
if NODE_ID == "":
raise ValueError, "NODE_ID"
+ VERSION=vars['VERSION'] or 'unknown'
+
except KeyError, var:
raise BootManagerException, "Missing variable in vars: %s\n" % var
except ValueError, var:
log.write( "mounting vserver partition in root file system\n" )
utils.makedirs( SYSIMG_PATH + "/vservers" )
- utils.sysexec( "mount -t ext3 %s %s/vservers" % (PARTITIONS["vservers"],
+ utils.sysexec( "mount -t btrfs %s %s/vservers" % (PARTITIONS["vservers"],
SYSIMG_PATH), log )
vars['ROOT_MOUNTED']= 1
if not extensions:
log.write("Installing only core software\n")
else:
- log.write("Requested extensions %r" % extensions)
+ log.write("Requested extensions %r\n" % extensions)
bootstrapfs_names = [ nodefamily ] + extensions
SYSIMG_PATH + "/usr/boot/cacert.pem")
file(SYSIMG_PATH + "/usr/boot/boot_server", "w").write(boot_server)
shutil.copy("/usr/bootme/pubring.gpg", SYSIMG_PATH + "/usr/boot/pubring.gpg")
-
+
# For backward compatibility
if os.path.exists("/usr/bootme"):
utils.makedirs(SYSIMG_PATH + "/mnt/cdrom")
utils.makedirs(SYSIMG_PATH + "/etc/pki/rpm-gpg")
utils.sysexec("gpg --homedir=/root --export --armor" \
" --no-default-keyring --keyring %s/usr/boot/pubring.gpg" \
- " >%s/etc/pki/rpm-gpg/RPM-GPG-KEY-planetlab" % (SYSIMG_PATH, SYSIMG_PATH))
- utils.sysexec_chroot(SYSIMG_PATH, "rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-planetlab")
+ " >%s/etc/pki/rpm-gpg/RPM-GPG-KEY-planetlab" % (SYSIMG_PATH, SYSIMG_PATH), log)
+ utils.sysexec_chroot(SYSIMG_PATH, "rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-planetlab", log)
+
+ # keep a log on the installed hdd
+ stamp=file(SYSIMG_PATH + "/bm-install.txt",'w')
+ now=time.strftime("%Y-%b-%d @ %H:%M %Z", time.gmtime())
+ stamp.write("Hard drive installed by BootManager %s\n"%VERSION)
+ stamp.write("Finished extraction of bootstrapfs on %s\n"%now)
+ stamp.write("Using nodefamily %s\n"%nodefamily)
+ stamp.close()
return 1