Add to ISO ability to boot from USB
DocImpact Change-Id: I7b2dc2757c28881e02ed3bdb6edb7568af7bcf4d Closes-Bug: #1387033
This commit is contained in:
parent
c3f3bf4c1f
commit
d6093811e7
|
@ -16,7 +16,12 @@ menu color hotkey 7 #ffffffff #ff000000
|
|||
menu color scrollbar 0 #ffffffff #00000000
|
||||
|
||||
label nailgunstatic
|
||||
menu label Fuel Install (^Static IP)
|
||||
menu label DVD Fuel Install (^Static IP)
|
||||
menu default
|
||||
kernel vmlinuz
|
||||
append initrd=initrd.img biosdevname=0 ks=cdrom:/ks.cfg ip=10.20.0.2 gw=10.20.0.1 dns1=10.20.0.1 netmask=255.255.255.0 hostname=fuel.domain.tld showmenu=yes
|
||||
|
||||
label usbboot
|
||||
menu label USB Fuel Install (S^tatic IP)
|
||||
kernel vmlinuz
|
||||
append initrd=initrd.img biosdevname=0 repo=hd:LABEL=will_be_substituted_with_ISO_VOLUME_ID:/ ks=hd:LABEL=will_be_substituted_with_ISO_VOLUME_ID:/ks.cfg ip=10.20.0.2 gw=10.20.0.1 dns1=10.20.0.1 netmask=255.255.255.0 hostname=fuel.domain.tld showmenu=yes
|
||||
|
|
|
@ -26,10 +26,12 @@ skipx
|
|||
drives=""
|
||||
removable_drives=""
|
||||
for drv in `ls -1 /sys/block | grep "sd\|hd\|vd\|cciss"`; do
|
||||
if (grep -q 0 /sys/block/${drv}/removable); then
|
||||
drives="${drives} ${drv}"
|
||||
else
|
||||
removable_drives="${removable_drives} ${drv}"
|
||||
if !(blkid | grep -q "${drv}.*Fuel"); then
|
||||
if (grep -q 0 /sys/block/${drv}/removable); then
|
||||
drives="${drives} ${drv}"
|
||||
else
|
||||
removable_drives="${removable_drives} ${drv}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
default_drive=`echo ${drives} ${removable_drives} | awk '{print $1}'`
|
||||
|
@ -175,7 +177,9 @@ fi
|
|||
tgtdrive=$(echo $tgtdrive | sed -e 's/!/\//')
|
||||
|
||||
# source
|
||||
if test -e /dev/disk/by-uuid/will_be_substituted_with_actual_uuid; then
|
||||
if test -e /dev/disk/by-label/will_be_substituted_with_ISO_VOLUME_ID; then
|
||||
echo "harddrive --partition=LABEL=will_be_substituted_with_ISO_VOLUME_ID --dir=/" > /tmp/source.ks
|
||||
elif test -e /dev/disk/by-uuid/will_be_substituted_with_actual_uuid; then
|
||||
echo "harddrive --partition=UUID=will_be_substituted_with_actual_uuid --dir=/" > /tmp/source.ks
|
||||
else
|
||||
echo "cdrom" > /tmp/source.ks
|
||||
|
@ -285,6 +289,8 @@ echo -e "* soft core unlimited\n* hard core unlimited" >> /etc/security/limits.c
|
|||
%post --nochroot --log=/mnt/sysimage/root/anaconda-post-before-chroot.log
|
||||
#!/bin/sh
|
||||
|
||||
set -x
|
||||
|
||||
SOURCE="/mnt/sysimage/tmp/source"
|
||||
|
||||
for I in `cat /proc/cmdline`; do case "$I" in *=*) eval $I;; esac ; done
|
||||
|
@ -368,7 +374,9 @@ echo
|
|||
mkdir -p ${SOURCE}
|
||||
mkdir -p ${FS}
|
||||
|
||||
if test -e /dev/disk/by-uuid/will_be_substituted_with_actual_uuid; then
|
||||
if test -e /dev/disk/by-label/will_be_substituted_with_ISO_VOLUME_ID; then
|
||||
mount /dev/disk/by-label/will_be_substituted_with_ISO_VOLUME_ID ${SOURCE}
|
||||
elif test -e /dev/disk/by-uuid/will_be_substituted_with_actual_uuid; then
|
||||
mount /dev/disk/by-uuid/will_be_substituted_with_actual_uuid ${FS}
|
||||
mount -o loop ${FS}/nailgun.iso ${SOURCE}
|
||||
fi
|
||||
|
|
|
@ -228,10 +228,10 @@ $(BUILD_DIR)/iso/isoroot.done: \
|
|||
########################
|
||||
|
||||
ifeq ($(filter mirantis,$(FEATURE_GROUPS)),mirantis)
|
||||
ISO_VOLUME_ID:="Mirantis Fuel"
|
||||
ISO_VOLUME_ID:="Mirantis_Fuel"
|
||||
ISO_VOLUME_PREP:="Mirantis Inc."
|
||||
else
|
||||
ISO_VOLUME_ID:="OpenStack Fuel"
|
||||
ISO_VOLUME_ID:="OpenStack_Fuel"
|
||||
ISO_VOLUME_PREP:="Fuel team"
|
||||
endif
|
||||
|
||||
|
@ -248,11 +248,14 @@ $(ISO_PATH): $(BUILD_DIR)/iso/isoroot.done
|
|||
sudo sed -r -i -e "s/netmask=[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}/netmask=$(MASTER_NETMASK)/" $(BUILD_DIR)/iso/isoroot-mkisofs/isolinux/isolinux.cfg
|
||||
sudo sed -r -i -e "s/gw=[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}/gw=$(MASTER_GW)/" $(BUILD_DIR)/iso/isoroot-mkisofs/isolinux/isolinux.cfg
|
||||
sudo sed -r -i -e "s/will_be_substituted_with_PRODUCT_VERSION/$(PRODUCT_VERSION)/" $(BUILD_DIR)/iso/isoroot-mkisofs/isolinux/isolinux.cfg
|
||||
sudo sed -r -i -e 's/will_be_substituted_with_ISO_VOLUME_ID/$(ISO_VOLUME_ID)/g' $(BUILD_DIR)/iso/isoroot-mkisofs/isolinux/isolinux.cfg
|
||||
sudo sed -r -i -e 's/will_be_substituted_with_ISO_VOLUME_ID/$(ISO_VOLUME_ID)/g' $(BUILD_DIR)/iso/isoroot-mkisofs/ks.cfg
|
||||
mkisofs -r -V $(ISO_VOLUME_ID) -p $(ISO_VOLUME_PREP) \
|
||||
-J -T -R -b isolinux/isolinux.bin \
|
||||
-no-emul-boot \
|
||||
-boot-load-size 4 -boot-info-table \
|
||||
-x "lost+found" -o $@ $(BUILD_DIR)/iso/isoroot-mkisofs
|
||||
isohybrid $@
|
||||
implantisomd5 $@
|
||||
|
||||
# IMGSIZE is calculated as a sum of iso size plus
|
||||
|
|
|
@ -110,7 +110,7 @@ sudo apt-get update
|
|||
sudo apt-get -y install build-essential make git $GEMPKG debootstrap createrepo \
|
||||
python-setuptools yum yum-utils libmysqlclient-dev isomd5sum bc \
|
||||
python-nose libvirt-bin python-ipaddr python-paramiko python-yaml \
|
||||
python-pip kpartx extlinux unzip genisoimage \
|
||||
python-pip kpartx extlinux unzip genisoimage syslinux \
|
||||
lrzip python-daemon python-dev
|
||||
sudo gem install bundler -v 1.2.1
|
||||
sudo gem install builder
|
||||
|
|
Loading…
Reference in New Issue