I have been using a ACER AspireONE D257-13685 netbook running CentOS 6.6 as my portable
kickstart server for more than a year successfully. This is because I work in different
datacenters and a highly portable kickstart setup is very desirable.
I have the following in the /etc/yum.repos.d:
[root@kicker yum.repos.d]# lsCentOS-Base.repo CentOS-fasttrack.repo
CentOS-Vault.repo epel-testing.repo mirrors-rpmforge
mirrors-rpmforge-testingCentOS-Debuginfo.repo CentOS-Media.repo epel.repo
home:libertas-ict:cobbler26.repo mirrors-rpmforge-extras rpmforge.repo
So, whenever there is a new cobbler release, the netbook will have it.
Earlier today, I did yum update on the netbook. After that I did a couple test kickstart
and soon observed failures. As usual I did the cobbler system getks --name=... as a first
check to see if the kickstart is rendered or not. Immediately I got:
[root@kicker ~]# cobbler system getks --name=sc2u0n0
# This kickstart had errors that prevented it from being rendered correctly.
# The cobbler.log should have information relating to this failure.No. The
/var/log/cobbler/cobbler.log isn't helpful at all. So, with divide and conquer, by
commenting out different sections in the kickstart template, I soon concluded that the
pre_install_network_config is the culprit.
I even copied over the latest pre_install_network_config from the project's github
master. Then put it in /var/lib/cobbler/snippets. No go.
Luckily, I have another cobbler server for my office LAN, which retrieves cobbler from
epel, so it's still on 2.6.3. Copying over its pre_install_network_config, then
cobbler system getks --name all worked again.
I then tried to review the difference between the two,
pre_install_network_config.org is
the one that came with 2.6.8. But I couldn't see why the one that came with 2.6.8
would fail the Cheetah parser.
Would appreciate any hints.
-- Zack
[root@kicker snippets]# diff -c pre_install_network_config
pre_install_network_config.orig*** pre_install_network_config 2015-05-31
21:13:18.298305070 -0700--- pre_install_network_config.orig 2015-05-31 21:13:01.372426891
-0700****************** 30,36 **** } #end raw #set ikeys = $interfaces.keys()!
#import re #set $vlanpattern = $re.compile("[a-zA-Z0-9]+[\.][0-9]+")
#set $routepattern = $re.compile("[0-9/.]+:[0-9.]+") ##--- 30,36 ---- }
#end raw #set ikeys = $interfaces.keys()! # import re #set $vlanpattern =
$re.compile("[a-zA-Z0-9]+[\.][0-9]+") #set $routepattern =
$re.compile("[0-9/.]+:[0-9.]+") ##****************** 56,61 ****--- 56,63
---- #set $static = $idata["static"] #set $ip
= $idata["ip_address"] #set $netmask =
$idata["netmask"]+ #set $gateway = $idata["gateway"]+
#set $if_gateway = $idata["if_gateway"] #set $iface_type =
$idata["interface_type"] #set $iface_master =
$idata["interface_master"] #set $static_routes =
$idata["static_routes"]****************** 101,108 **** #set
$netmask = "255.255.255.0" #end if #set
$netinfo = "--bootproto=static --ip=%s --netmask=%s" % ($ip, $netmask)!
#if $gateway != ""! #set $netinfo = "%s
--gateway=%s" % ($netinfo, $gateway) #end if #if
$len($name_servers) > 0 #set $netinfo = "%s
--nameserver=%s" % ($netinfo, $name_servers[0])--- 103,116 ----
#set $netmask = "255.255.255.0" #end if #set
$netinfo = "--bootproto=static --ip=%s --netmask=%s" % ($ip, $netmask)!
#if $if_gateway != ""! #if $if_gateway == $gateway!
#set $netinfo = "%s --gateway=%s" % ($netinfo, $if_gateway)!
#else! #set $netinfo = "%s --gateway=%s
--nodefroute" % ($netinfo, $if_gateway)! #end if!
#else if $gateway != ""! #set $netinfo = "%s
--gateway=%s" % ($netinfo, $gateway) #end if #if
$len($name_servers) > 0 #set $netinfo = "%s
--nameserver=%s" % ($netinfo, $name_servers[0])