Description of problem: Some NICs sometimes fail to get IP during boot up. To work around the problem, recent RHELs provide "LINKDELAY=" parameter in /etc/sysconfig/network-scripts/ifcfg-eth<X> file. For example of RHEL6.3 Techinical Notes: > 3.6. Networking > kernel component > Some e1000e NICs may not get an IPv4 address assigned after > the system is rebooted. To work around this issue, add the following > line to the /etc/sysconfig/network-scripts/ifcfg-eth<X> file: > > LINKDELAY=10 Because this can happen on the first boot up just after install and then all test fails before starting any test, this cannot be worked around by a test. The snippet below provides "linkdelay=" kickstart metadata which adds "LINKDELAY=" parameter to the config file of the active NIC. -------------------------------------------------------------------------------- {% if linkdelay %} IFACE=$(route -n 2> /dev/null | awk '/^0\.0\.0\.0/ {print $8}' | tail -n 1) echo "LINKDELAY={{ linkdelay }}" >> /etc/sysconfig/network-scripts/ifcfg-$IFACE {% endif %} -------------------------------------------------------------------------------- Please add such a feature to the stage of kickstart %post. (e.g. somewhere in the rhts_post snippet or so)
Would it be reasonable to add the LINKDELAY= line to every ifcfg-* file (except ifcfg-lo) instead of guessing the interface?
Yes, I think so.
On Gerrit: http://gerrit.beaker-project.org/1513
Verified with build beaker-server-0.10.6-1.git.95.9d3b913.el6. Submitted a job with: <recipe kernel_options="" kernel_options_post="" ks_meta="linkdelay=20" role="RECIPE_MEMBERS" whiteboard=""> After provision, LLINKDELAY=20 is added into the ifcfg-* files: $ cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" BOOTPROTO="dhcp" HWADDR="52:54:3D:43:76:B6" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Ethernet" UUID="829c5a02-34c3-4dd4-9e2d-4ac2325f67eb" LINKDELAY=20
Beaker 0.11.0 has been released.