rebased it against current next-devel
---
 scripts/ovirt-config-boot      |   15 ++++++++-------
 scripts/ovirt-config-storage   |   28 +++++++++++++++-------------
 scripts/ovirt-config-uninstall |    2 ++
 scripts/ovirt-functions        |    8 +++++---
 4 files changed, 30 insertions(+), 23 deletions(-)

diff --git a/scripts/ovirt-config-boot b/scripts/ovirt-config-boot
index ed2bb9f..01c1821 100755
--- a/scripts/ovirt-config-boot
+++ b/scripts/ovirt-config-boot
@@ -56,11 +56,11 @@ ovirt_boot_setup() {
     mkdir -p /liveos
     # prepare Root partition update
     candidate=
-    if [ -e /dev/HostVG/RootBackup ]; then
+    if [ -e /dev/disk/by-label/RootBackup ]; then
         candidate=RootBackup
-    elif [ -e /dev/HostVG/RootUpdate ]; then
+    elif [ -e /dev/disk/by-label/RootUpdate ]; then
         candidate=RootUpdate
-    elif [ -e /dev/HostVG/RootNew ]; then
+    elif [ -e /dev/disk/by-label/RootNew ]; then
         candidate=RootNew
     fi
     if [ -z "$candidate" ]; then
@@ -69,7 +69,8 @@ ovirt_boot_setup() {
         umount /liveos
         rc=0
     else
-        lvrename HostVG $candidate RootNew
+        candidate_dev=$(readlink -f /dev/disk/by-label/$candidate)
+        e2label $candidate_dev RootNew
         rc=$?
     fi
     if [ $rc -ne 0 ]; then
@@ -77,7 +78,7 @@ ovirt_boot_setup() {
       log "$(lvdisplay -c)"
       return $rc
     fi
-    mount /dev/HostVG/RootNew /liveos
+    mount $candidate_dev /liveos
     # install oVirt Node image for local boot
     if [ -e "$live/syslinux" ]; then
       syslinux=syslinux
@@ -196,7 +197,7 @@ set -e\
     version=$(rpm -q --qf '%{version}' ovirt-node)
     release=$(rpm -q --qf '%{release}' ovirt-node)
     # reorder tty0 to allow both serial and phys console after installation
-    bootparams="ro root=/dev/HostVG/Root roottypefs=ext3 console=tty0 \
+    bootparams="ro root=LABEL=Root roottypefs=ext3 console=tty0 \
                 $(echo $bootparams | sed s/console=tty0//g)"
     # append mpath and filter if selected disk is /dev/mpath/*
     if [[ "$disk" =~ "^/dev/mpath/" ]]; then
@@ -250,7 +251,7 @@ EOF
     umount /liveos
     umount /boot
     # mark new Root ready to go, reboot() in ovirt-function switches it to 
active
-    lvrename HostVG RootNew RootUpdate
+    e2label $candidate_dev RootUpdate
 
     rm -rf $tmpdir
     log "done."
diff --git a/scripts/ovirt-config-storage b/scripts/ovirt-config-storage
index c448aee..06a5363 100755
--- a/scripts/ovirt-config-storage
+++ b/scripts/ovirt-config-storage
@@ -531,12 +531,23 @@ perform_partitioning()
     parted $DRIVE -s "mklabel ${LABEL_TYPE}"
     log "Creating boot partition"
     parted $DRIVE -s "mkpartfs primary ext2 0M ${boot_size_si}M"
+    log "Creating Root and RootBackup Partitions"
+    let root1_end=${boot_size_si}+${ROOT_SIZE}
+    let root2_end=${root1_end}+${ROOT_SIZE}
+    parted $DRIVE -s "mkpartfs primary ext2 ${boot_size_si}M ${root1_end}M"
+    parted $DRIVE -s "mkpartfs primary ext2 ${root1_end}M ${root2_end}M"
+    # sleep to ensure filesystems are created before continuing
+    sleep 10
+    e2label ${DRIVE}2 Root
+    e2label ${DRIVE}3 RootBackup
+    tune2fs -c 0 -i 0 ${DRIVE}2
+    tune2fs -c 0 -i 0 ${DRIVE}3
     log "Creating LVM partition"
-    parted $DRIVE -s "mkpart primary ext2 ${boot_size_si}M -1"
+    parted $DRIVE -s "mkpart primary ext2 ${root2_end}M -1
     log "Toggling boot on"
     parted $DRIVE -s "set 1 boot on"
     log "Toggling LVM on"
-    parted $DRIVE -s "set 2 lvm on"
+    parted $DRIVE -s "set 4 lvm on"
     parted $DRIVE -s "print"
     udevadm settle 2> /dev/null || udevsettle
     if [[ "$DRIVE" =~ "^/dev/mapper" ]]; then
@@ -550,11 +561,11 @@ perform_partitioning()
     fi
 
     partboot=${DRIVE}1
-    partpv=${DRIVE}2
+    partpv=${DRIVE}4
     if [ ! -e "$partpv" ]; then
         # e.g. /dev/cciss/c0d0p2
         partboot=${DRIVE}p1
-        partpv=${DRIVE}p2
+        partpv=${DRIVE}p4
     fi
     log "Creating physical volume"
     if [ ! -e "$partpv" ]; then
@@ -582,15 +593,6 @@ perform_partitioning()
         mkswap -L "SWAP" /dev/HostVG/Swap
         echo "/dev/HostVG/Swap swap swap defaults 0 0" >> /etc/fstab
     fi
-    if [ "$ROOT_SIZE" -gt 0 ]; then
-        log "Creating root and root backup partitions"
-        lvcreate --name Root --size ${ROOT_SIZE}M /dev/HostVG
-        mke2fs -j /dev/HostVG/Root -L "ROOT"
-        tune2fs -c 0 -i 0 /dev/HostVG/Root
-        lvcreate --name RootBackup --size ${ROOT_SIZE}M /dev/HostVG
-        mke2fs -j /dev/HostVG/RootBackup -L "ROOT2"
-        tune2fs -c 0 -i 0 /dev/HostVG/RootBackup
-    fi
     if [ "$CONFIG_SIZE" -gt 0 ]; then
         log "Creating config partition"
         lvcreate --name Config --size ${CONFIG_SIZE}M /dev/HostVG
diff --git a/scripts/ovirt-config-uninstall b/scripts/ovirt-config-uninstall
index 20f8c2c..95a71a9 100755
--- a/scripts/ovirt-config-uninstall
+++ b/scripts/ovirt-config-uninstall
@@ -58,6 +58,8 @@ if ask_yes_or_no "Do you wish to continue and uninstall this 
node ([Y]es/[N]o)?"
            drive=$(echo $partition | awk '{ print substr($0, 1, length($0) - 
1) }')
            parted -s $drive "rm 1"
            parted -s $drive "rm 2"
+            parted -s $drive "rm 3"
+            parted -s $drive "rm 4"
        fi
         service multipathd restart
        printf "Finished uninstalling node."
diff --git a/scripts/ovirt-functions b/scripts/ovirt-functions
index fc43343..f24cb07 100644
--- a/scripts/ovirt-functions
+++ b/scripts/ovirt-functions
@@ -625,9 +625,11 @@ lvremove() {
 reboot() {
     cd /
     # setup new Root if update is prepared
-    if [ -e /dev/HostVG/RootUpdate ]; then
-        lvrename HostVG Root RootBackup
-        lvrename HostVG RootUpdate Root
+    if [ -e "/dev/disk/by-label/RootUpdate" ]; then
+        root_update_dev=$(readlink -f /dev/disk/by-label/RootUpdate)
+        root_dev=$(readlink -f /dev/disk/by-label/Root)
+        e2label $root_dev RootBackup
+        e2label $root_update_dev Root
     fi
     # run post-install hooks
     # e.g. to avoid reboot loops using Cobbler PXE only once
-- 
1.6.2.5

_______________________________________________
Ovirt-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/ovirt-devel

Reply via email to