Hi Jorgen
We found a few more issues with buildiso when moving across from 1.6 to 2.2
DNS entries
If added via the kernel options (dns=x.x.x.x,x.x.x.x) are being set as a
list on the APPEND line.
Old 1.6 entries we have used this a lot, this is a temporary fix put in
place.
@@ -349,7 +353,10 @@
if dist.breed == "suse":
append_line += " nameserver=%s" % my_dns[0]
if dist.breed == "redhat":
- append_line += " dns=%s" % ",".join(my_dns)
+ if type(my_dns) == list:
+ append_line += " dns=%s" % ",".join(my_dns)
+ else:
+ append_line += " dns=%s" % my_dns
if dist.breed in ["ubuntu","debian"]:
append_line += " netcfg/get_nameservers=%s" %
",".join(my_dns)
Management Interface
As this option never existed in 1.6 buildiso will fail as the management
field is not populated with data for any interface, this is a temporary
fix to get us round the issue in the interim. Not sure of best approach
here e.g. as we have ksdevice (redhat) set would could run a script to
set False on all systems interfaces.
@@ -267,6 +267,10 @@
mgmt_ints = []; mgmt_ints_multi = []; slave_ints = []
if len(data["interfaces"].keys()) >= 1:
for (iname, idata) in data["interfaces"].iteritems():
+ # check if management exists
+ if not "management" in data["interfaces"]:
+ idata["management"] = "False"
+
if idata["management"] == True and
idata["interface_type"] in
["master","bond","bridge"]:
# bonded/bridged management interface
mgmt_ints_multi.append(iname)
We use ksdevice a lot on our multi-nic systems, would it not make sense
if management interface is selected and ksdevice is not added to kernel
options it gets added, same could be true of other OS. The best place
for this I am not sure would be easy enough to add to buildiso but its
also a nice feature to have for koan ?
BTW the name management interface seems confusing as some folks (ok me)
will associate that we say out of band management maybe boot|build
interface would have been a better name, just a thought.
Thanks again, will keep testing.
Cheers,
Simon