-#!/usr/bin/python
+#!/usr/bin/python2
#
# Copyright (c) 2003 Intel Corporation
# All rights reserved.
# in upgrade mode, since we skip InstallPartitionDisks
# we need to run this
if upgrade:
- log.write("Running vgscan for devices (upgrade mode)\n")
+ log.write("Upgrade mode init : Scanning for devices\n")
systeminfo.get_block_devices_dict(vars, log)
- utils.sysexec_noerr("vgscan", log)
-
+ utils.sysexec_noerr("vgscan --mknodes", log)
+ utils.sysexec_noerr("vgchange -ay", log)
+
+ # debugging info - show in either mode
+ utils.display_disks_status(PARTITIONS, "In InstallBootstrapFS", log)
+
+ utils.breakpoint("we need to make /dev/mapper/* appear")
+
log.write("turning on swap space\n")
utils.sysexec("swapon {}".format(PARTITIONS["swap"]), log)
utils.sysexec("mount -t {} {} {}/vservers"\
.format(fstype, PARTITIONS["vservers"], SYSIMG_PATH), log)
- if vars['virt']=='lxc':
+ #if vars['virt']=='lxc':
# NOTE: btrfs quota is supported from version: >= btrfs-progs-0.20 (f18+)
# older versions will not recongize the 'quota' command.
- log.write("Enabling btrfs quota on {}/vservers\n".format(SYSIMG_PATH))
- utils.sysexec_noerr("btrfs quota enable {}/vservers".format(SYSIMG_PATH))
+ #log.write("Enabling btrfs quota on {}/vservers\n".format(SYSIMG_PATH))
+ #utils.sysexec_noerr("btrfs quota enable {}/vservers".format(SYSIMG_PATH))
vars['ROOT_MOUNTED'] = 1
with open("{}/etc/planetlab/virt".format(sysimg)) as infile:
installed_virt = infile.read().strip()
except Exception as e:
- print_exc()
+ traceback.print_exc()
raise BootManagerException("Could not retrieve data about previous installation - cannot upgrade")
# moving from vservers to lxc also means another filesystem
# so plain reinstall is the only option
if installed_virt != 'lxc':
- raise BootManagerException("Can only upgrade nodes running lxc containers (vservers not supported)")
+ message = """Can only upgrade nodes already running lxc containers
+a node running vservers has its /vservers/ partition formatted as ext3
+and we need btrfs to move to containers
+your only option here is reinstall"""
+ raise BootManagerException(message)
# changing arch is not reasonable either
if target_arch != installed_arch: