[Ovirt-devel] [PATCH node] RESEND: fix iscsi installation problems

Darryl L. Pierce dpierce at redhat.com
Mon May 10 17:39:28 UTC 2010


On Mon, May 10, 2010 at 11:23:43AM -0400, Joey Boggs wrote:
> On 05/10/2010 11:19 AM, Joey Boggs wrote:
> >This patch fixes both local installation and iscsi installation issues
> >---
> >  scripts/ovirt-config-boot       |   10 ++++++----
> >  scripts/ovirt-config-networking |    8 +++++---
> >  scripts/ovirt-config-storage    |   17 ++++++++++++++++-
> >  scripts/ovirt-functions         |   27 ++++++++++++++++++---------
> >  4 files changed, 45 insertions(+), 17 deletions(-)
> >
> >diff --git a/scripts/ovirt-config-boot b/scripts/ovirt-config-boot
> >index 9593905..15066f7 100755
> >--- a/scripts/ovirt-config-boot
> >+++ b/scripts/ovirt-config-boot
> >@@ -40,7 +40,7 @@ ovirt_boot_setup() {
> >          found_boot=true
> >          grub_dev_label=Boot
> >      elif findfs LABEL=Root 2>&1>/dev/null ; then
> >-        found_boot=true
> >+        found_boot=false
> >          grub_dev_label=Root
> >      fi
> >      if $found_boot; then
> >@@ -62,8 +62,8 @@ ovirt_boot_setup() {
> >          grub_dev_label="RootBackup"
> >      fi
> >
> >-    # check that /boot mounted ok and find partition number for GRUB
> >-    get_part_info $(readlink -f $(findfs LABEL=$grub_dev_label 2>/dev/null)) disk partN
> >+    # check that /boot mounted ok and find partition number for GRUB, $4 is to allow 0 as a partition number for grub
> >+    get_part_info $(readlink -f $(findfs LABEL=$grub_dev_label 2>/dev/null)) disk partN y
> >      rc=$?
> >      if [ $rc -ne 0 -o $partN -lt 0 ]; then
> >        log "unable to determine Root partition"
> >@@ -228,7 +228,9 @@ fi
> >  rc=$?
> >  if [ $rc -eq 0 -a "$doreboot" = "yes" ]; then
> >      disable_firstboot
> >-    ovirt_store_firstboot_config
> >+    if [ "$OVIRT_ISCSI_ENABLED" != "y" ]; then
> >+        ovirt_store_firstboot_config
> >+    fi
> >      stop_log
> >
> >      reboot
> >diff --git a/scripts/ovirt-config-networking b/scripts/ovirt-config-networking
> >index 4d412ac..810d0e0 100755
> >--- a/scripts/ovirt-config-networking
> >+++ b/scripts/ovirt-config-networking
> >@@ -24,10 +24,12 @@ CONFIGURED_NIC=""
> >  VLAN_ID=""
> >  VL_ROOT=""
> >
> >+if [[ -z "$ROOTDRIVE"&&  "$OVIRT_ISCSI_ENABLED" != "y" ]]; then
> >  # if local storage is not configured, then exit the script
> >-if ! is_local_storage_configured; then
> >-    printf "Local storage must be configured prior to configuring the management interface.\n\n"
> >-    exit 99
> >+    if [[ ! is_local_storage_configured&&  "$OVIRT_ISCSI_NETWORKING" != "y" ]] ; then
> >+        printf "Local storage must be configured prior to configuring the management interface.\n\n"
> >+        exit 99
> >+    fi
> >  fi
> >
> >  # $1 - the variable name to set
> >diff --git a/scripts/ovirt-config-storage b/scripts/ovirt-config-storage
> >index 9b37035..df36752 100755
> >--- a/scripts/ovirt-config-storage
> >+++ b/scripts/ovirt-config-storage
> >@@ -642,7 +642,7 @@ perform_partitioning()
> >          parted "$BOOTDRIVE" -s "mklabel ${LABEL_TYPE}"
> >          parted "$BOOTDRIVE" -s "mkpartfs primary ext2 0M ${boot_size_si}M"
> >          reread_partitions "$BOOTDRIVE"
> >-        partboot="$BOOTDRIVE1"
> >+        partboot="${BOOTDRIVE}1"
> >          if [ ! -e "$partboot" ]; then
> >              partboot="${BOOTDRIVE}p1"
> >          fi
> >@@ -817,11 +817,26 @@ do_confirm()
> >          else
> >              return
> >          fi
> >+        # store networking config since it was created before storage was established for iscsi targets
> >+        if [ "$OVIRT_ISCSI_NETWORKING" == "y" ]; then
> >+            ovirt_store_config \
> >+        /etc/sysconfig/network-scripts/ifcfg* \
> >+        /etc/ntp.conf
> >+        fi
> >      done
> >  }
> >
> >  do_iscsi_target()
> >  {
> >+if ! network_up ; then
> >+    printf "Networking must be configured prior to configuring an iscsi target.\n\n"
> >+    # allow network config without setting up storage first
> >+    augtool<<EOF
> >+set /files/etc/default/ovirt/OVIRT_ISCSI_NETWORK_CONFIG y
> >+EOF
> >+    exit 99
> >+fi
> >+
> >  while true; do
> >      OPTIONS="\"Target IP\" \"Target Port\"" #\"CHAP Username\" \"CHAP Password\""
> >      printf "\nPress Enter to leave option blank or Q to quit (default Target Port is 3260)\n"
> >diff --git a/scripts/ovirt-functions b/scripts/ovirt-functions
> >index b0255ce..73deaa2 100644
> >--- a/scripts/ovirt-functions
> >+++ b/scripts/ovirt-functions
> >@@ -326,7 +326,7 @@ mount_boot() {
> >         return 0
> >      fi
> >      mkdir -p /boot
> >-    mount LABEL=Root /boot
> >+    mount LABEL=Boot /boot
> >  }
> >  # stop any service which keeps /var/log busy
> >  # keep the list of services
> >@@ -865,23 +865,32 @@ get_part_info() {
> >      local drive_in="$1"
> >      local dev_var=$2
> >      local part_var=$3
> >+    local grub_dev=$4
> >      local devname_1 devname2 part_number
> >      local rc=0
> >
> >-    eval $(readlink -f "$drive_in" |awk {'
> >-        print "devname_1=" substr($1,1,length($1)-1);
> >-        print "devname_2=" substr($1,1,length($1)-2);
> >-        part_number=substr($1,length($1),1);
> >-        print "part_number=" part_number;
> >-    }')
> >+    if [ -z "$grub_dev" ]; then
> >+        eval $(readlink -f "$drive_in" |awk {'
> >+            print "devname_1=" substr($1,1,length($1)-1);
> >+            print "devname_2=" substr($1,1,length($1)-2);
> >+            part_number=substr($1,length($1),1);
> >+            print "part_number=" part_number;
> >+        }')
> >+    else
> >+        eval $(readlink -f "$drive_in" |awk {'
> >+            print "devname_1=" substr($1,1,length($1)-1);
> >+            print "devname_2=" substr($1,1,length($1)-2);
> >+            part_number=substr($1,length($1),1); part_number--;
> >+            print "part_number=" part_number;
> >+        }')
> >+    fi
> >      rc=$?
> >
> >-    if [[ "part_number" -lt 1 ]]; then
> >+    if [[ "$part_number" -lt 1&&  "$grub_dev" != "y" ]]; then

There should be a space here

+    if [[ "$part_number" -lt 1 &&  "$grub_dev" != "y" ]]; then

> >          log "Partition number was invalid"
> >          return 2
> >      fi
> >
> >-
> >      if [ -e ${devname_1} ]; then
> >          eval "${dev_var}"="${devname_1}"
> >      elif [ -e ${devname_2} ]; then
> This one is over a month old and without it prevents local
> installation. I'll push this later today if there's no negative
> feedback
> 
> _______________________________________________
> Ovirt-devel mailing list
> Ovirt-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/ovirt-devel

Otherwise, based on reading the patch it looks fine.

-- 
Darryl L. Pierce, Sr. Software Engineer @ Red Hat, Inc.
Delivering value year after year.
Red Hat ranks #1 in value among software vendors.
http://www.redhat.com/promo/vendor/

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/ovirt-devel/attachments/20100510/3ece7d89/attachment.sig>


More information about the ovirt-devel mailing list