On Tue, Dec 30, 2008 at 06:34:32PM -0500, Michael DeHaan wrote:
> Axel Thimm wrote:
> > anaconda has an %include directive, but that only works for local
> > files. The usual trick is to %pre a wget and %include it later on. But
> > that doesn't work if the parent kickstart file is the one defining the
> > base parameters like which URL to install from etc.
> >
> > Also %including a prerendered kickstart file isn't really cobbler
> > style, the variables could have changed and the included rendered file
> > would reflect the old settings of the parent profile.
> >
> > As a workaround I'm doing the following on top of every kickstart file:
> >
> > #if $getVar("ksparent","") != ""
> >   #include $ksparent
> > #end if
> >
> > But ksparent needs to be provided and I'm using the poor man's API as
> >
> > ksparent=`cobbler profile dumpvars --name=Parent | grep "^ 'kickstart':" | 
> > sed -e"s| 'kickstart': '\(.*\)',$|\1|"`
> > ...
> > cobbler profile add [...] --inherit=Parent --ksmeta="ksparent=$ksparent" 
> > [...]
> >
> > It would be nice if ksparent could be set automatically by cobbler and
> > if a simple scriplet like
> > $ cat /var/lib/cobbler/snippets/include_parent
> > #if $getVar("ksparent","") != ""
> >   #include $ksparent
> > #end if
> >
> > would be referenced on all sample kickstart files as
> >
> > $SNIPPET('include_parent')
> >
> > Thanks!
> 
> I'm not sure I understand this one -- could you explain a bit more about 
> the use case and what you mean by "parent"/"ksparent" in this case?

The use case are subprofiles, that's where $parent comes from.

If one defines a subprofile it is usually for a more specialized group
of hosts that may need a slightly different kickstart
file. Fortunately most kickstart options can be overriden by later
options and some sections are even merged together, so that

%include /some/kickstart/file/parent.ks

at the very top of the kickstart file inherits the parent kickstart
and extends it.

This is heavily utilized in the Fedora spins, see for example
https://fedorahosted.org/spin-kickstarts/browser/fedora-livecd-desktop.ks#L5
https://fedorahosted.org/spin-kickstarts/browser/fedora-live-base.ks

The use case in cobbler is more like
# cobbler list
distro f10-x86_64
   profile f10-x86_64
      profile desktop-f10-x86_64
         system prospero
      profile server-f10-x86_64
         profile webserver-f10-x86_64
             system shylock

For example webserver-f10-x86_64.ks could look like

$SNIPPET('include_parent')

%packages
@web-server
%end
-- 
Axel.Thimm at ATrpms.net

Attachment: pgpB9NicRJiTK.pgp
Description: PGP signature

_______________________________________________
cobbler mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/cobbler

Reply via email to