diff --git a/perl-xCAT/xCAT/data/discinfo.pm b/perl-xCAT/xCAT/data/discinfo.pm index 7e3f0b378..a14111d4f 100755 --- a/perl-xCAT/xCAT/data/discinfo.pm +++ b/perl-xCAT/xCAT/data/discinfo.pm @@ -76,6 +76,8 @@ require Exporter; "1273712675.937554" => "fedora13", #x86_64 DVD ISO "1287685820.403779" => "fedora14", #x86_64 DVD ISO "1305315870.828212" => "fedora15", #x86_64 DVD ISO + "1372355769.065812" => "fedora19", #x86_64 DVD ISO + "1372402928.663653" => "fedora19", #ppc64 DVD ISO "1194512200.047708" => "rhas4.6", "1194512327.501046" => "rhas4.6", diff --git a/xCAT-server/lib/perl/xCAT/Template.pm b/xCAT-server/lib/perl/xCAT/Template.pm index 11d9c2085..69c560e4e 100644 --- a/xCAT-server/lib/perl/xCAT/Template.pm +++ b/xCAT-server/lib/perl/xCAT/Template.pm @@ -178,7 +178,7 @@ sub subvars { my $source_in_pre; my $c = 0; foreach my $pkgdir(@pkgdirs) { - if( $platform =~ /^(rh|SL|centos)$/ ) { + if( $platform =~ /^(rh|SL|centos|fedora)$/ ) { if ( $c == 0 ) { # After some tests, if we put the repo in pre scripts in the kickstart like for rhels6.x # the rhels5.9 will not be installed successfully. So put in kickstart directly. diff --git a/xCAT-server/share/xcat/install/fedora/compute.fedora19.pkglist b/xCAT-server/share/xcat/install/fedora/compute.fedora19.pkglist new file mode 100644 index 000000000..95f7e9963 --- /dev/null +++ b/xCAT-server/share/xcat/install/fedora/compute.fedora19.pkglist @@ -0,0 +1,10 @@ +#Please make sure there is a space between @ and group name +yp-tools +wget +vim-minimal +ntpdate +nfs-utils +rsync +net-tools +openssh-server +util-linux-ng diff --git a/xCAT-server/share/xcat/install/fedora/compute.fedora19.tmpl b/xCAT-server/share/xcat/install/fedora/compute.fedora19.tmpl new file mode 100644 index 000000000..c7dbef826 --- /dev/null +++ b/xCAT-server/share/xcat/install/fedora/compute.fedora19.tmpl @@ -0,0 +1,156 @@ +#egan@us.ibm.com +# +#cmdline + +lang en_US + +# +# Where's the source? +# nfs --server hostname.of.server or IP --dir /path/to/RH/CD/image +# +#nfs --server #XCATVAR:INSTALL_NFS# --dir #XCATVAR:INSTALL_SRC_DIR# + +%include /tmp/repos + +#device ethernet e100 +keyboard "us" + +# +# Clear the MBR +# +zerombr + +# +# Wipe out the disk +# +clearpart --all --initlabel +#clearpart --linux +#key --skip + +# +# Customize to fit your needs +# + +#XCAT_PARTITION_START# +#No RAID +#/boot really significant for this sort of setup nowadays? +#part /boot --size 50 --fstype ext3 +%include /tmp/partitioning +#XCAT_PARTITION_END# + +#RAID 0 /scr for performance +#part / --size 1024 --ondisk sda +#part swap --size 512 --ondisk sda +#part /var --size 1024 --ondisk sdb +#part swap --size 512 --ondisk sdb +#part raid.01 --size 1 --grow --ondisk sda +#part raid.02 --size 1 --grow --ondisk sdb +#raid /scr --level 0 --device md0 raid.01 raid.02 + +#Full RAID 1 Sample +#part raid.01 --size 50 --ondisk sda +#part raid.02 --size 50 --ondisk sdb +#raid /boot --level 1 --device md0 raid.01 raid.02 +# +#part raid.11 --size 1024 --ondisk sda +#part raid.12 --size 1024 --ondisk sdb +#raid / --level 1 --device md1 raid.11 raid.12 +# +#part raid.21 --size 1024 --ondisk sda +#part raid.22 --size 1024 --ondisk sdb +#raid /var --level 1 --device md2 raid.21 raid.22 +# +#part raid.31 --size 1024 --ondisk sda +#part raid.32 --size 1024 --ondisk sdb +#raid swap --level 1 --device md3 raid.31 raid.32 +# +#part raid.41 --size 1 --grow --ondisk sda +#part raid.42 --size 1 --grow --ondisk sdb +#raid /scr --level 1 --device md4 raid.41 raid.42 + +# +# bootloader config +# --append +# --useLilo +# --md5pass +# +bootloader + +# +# install or upgrade +# +install + +# +# text mode install (default is graphical) +# +text + +# +# firewall +# +firewall --disabled + +# +# mouse selection +# +#mouse genericps/2 --emulthree + +# +# Select a zone +# Add the --utc switch if your hardware clock is set to GMT +# +#timezone US/Hawaii +#timezone US/Pacific +#timezone US/Mountain +#timezone US/Central +#timezone US/Eastern +timezone --utc "#TABLE:site:key=timezone:value#" + +# +# Don't do X +# +skipx + + +# +# To generate an encrypted root password use: +# +# perl -e 'print crypt("blah","Xa") . "\n";'p +# openssl passwd -apr1 -salt xxxxxxxx password +# +# where "blah" is your root password. +# +#rootpw --iscrypted XaLGAVe1C41x2 +#rootpw XaLGAVe1C41x2 --iscrypted +rootpw --iscrypted #CRYPT:passwd:key=system,username=root:password# + +# +# NIS setup: auth --enablenis --nisdomain sensenet +# --nisserver neptune --useshadow --enablemd5 +# +# OR +auth --useshadow --enablemd5 + +# +# SE Linux +# +selinux --disabled + +# +# Reboot after installation +# +reboot + +# +#end of section +# +%packages --ignoremissing +#INCLUDE_DEFAULT_PKGLIST# +%end +%pre +#INCLUDE:#ENV:XCATROOT#/share/xcat/install/scripts/pre.rh# +%end +%post +#INCLUDE:#ENV:XCATROOT#/share/xcat/install/scripts/post.rh# +%end diff --git a/xCAT-server/share/xcat/install/scripts/pre.rh b/xCAT-server/share/xcat/install/scripts/pre.rh index 8fc78775f..03d591e80 100644 --- a/xCAT-server/share/xcat/install/scripts/pre.rh +++ b/xCAT-server/share/xcat/install/scripts/pre.rh @@ -13,6 +13,8 @@ if [ -r /tmp/updates/etc/pki/tls/certs/ca-bundle.crt ]; then cp -f /tmp/updates/etc/pki/tls/certs/ca-bundle.crt /etc/pki/tls/certs/ fi + + cat >/tmp/baz.py </foo.log 2>&1 & + + + #time to ascertain fstype and PReP/UEFI/legacy #also, find first available block device (sda or vda likely) #TODO: pick a likely non-SAN target if possible @@ -163,6 +169,7 @@ for disk in /dev/vd*[^0-9];do break fi done + if [ -z "$instdisk" ]; then for disk in /dev/sd*[^0-9]; do eddname=$(/lib/udev/edd_id $disk 2> /dev/null) @@ -184,6 +191,7 @@ if [ -z "$instdisk" ]; then esac done fi + if [ -z "$instdisk" ]; then if [ ! -z "$firstdirectdisk" ]; then instdisk=$firstdirectdisk @@ -204,6 +212,7 @@ elif grep ext4 /proc/filesystems > /dev/null; then else FSTYPE=ext3 fi + if [ `uname -m` = "ppc64" ]; then echo 'part None --fstype "PPC PReP Boot" --ondisk '$instdisk' --size 8' >> /tmp/partitioning fi @@ -218,9 +227,15 @@ echo "part / --size 1 --grow --ondisk $instdisk --fstype $FSTYPE" >> /tmp/partit #XCA_PARTITION_SCRIPT# + # The following code is to generate the repository for the installation cat /proc/cmdline -export nextserver=`cat /proc/cmdline | grep http | head -n 1 | cut -d / -f 3 | cut -d : -f 1` +NEXTSERVER=`cat /proc/cmdline | grep http | head -n 1` +NEXTSERVER=${NEXTSERVER#*http://} +NEXTSERVER=${NEXTSERVER%%:*} + +export nextserver=$NEXTSERVER #INSTALL_SOURCES_IN_PRE# +