Dan Guernsey wrote:
I think he's just asking for the value passed to --inherit in:
cobbler profile add ... --inherit=...
during profile creation.
He also wants a way to access (include, SNIPPET, whatever) the kickstart
for the parent profile.
I guess this is to avoid having to 'synchronize inheritance' between
profiles and corresponding kickstart templates. For instance, using the
tree given by Alex earlier:
# 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
The kickstart for profile webserver-f10-x86_64 could look like this:
## Child specific variables, defs, and other kickstart stuff
...
$SNIPPET($inheritsks)
...
## More child specifics
Instead of:
## Child specific stuff
...
$SNIPPET('server-f10-x86_64.ks') ## Making assumptions about the ks filename
...
## More
With this setup, if the profile tree is modified (ie. the --inherit
property is changed), the $SNIPPET(...) line won't need to be changed.
I think this feature would be simple to add to cobbler, either:
Add a variable allowing templates to access properties of the
profile via an object (this may already exist. I haven't kept up with
development):
$SNIPPET(profile.inherits.ksfile)
--or--
Add a variable containing the name of the parent ksfile:
$SNIPPET(inheritsks)
--or--
Add a command that snippets the parent profile:
$parentSNIPPET()
I think the top option is the most flexible, but may require excessive
modification.
The only purpose of the third option would be to hide the filename of
the parent's ksfile.
The second option is probably the simplest and should satisfy Axel's
request.
Ok, that makes some more sense -- however it does introduce the
complexity in many ways of ensuring that the parents are not
installable, or that you're using pykickstart
to do blending.
I really don't want to go there for various reasons --the main reason is
that pykickstart's forwards compatibility does not exist -- a RHEL 4
cobbler server would choke on trying
to render something for RHEL 5.
Also, certain pre/post magic seems to make it want to flip out.
Ultimately it introduces a design complexity that I don't wish to have.
It's probably best to share the same kickstart template through all of
the profiles, and then have certain snippets that either override
themselves based on the profile name using the Advanced Snippets support
or instead key off variables in ks-meta to do simple if blocks.
Those are really the only options as I don't want to go down the long
road for that use case as I think it would complicate things too much.
~
Dan
Axel Thimm wrote:
> On Sat, Jan 03, 2009 at 12:08:49PM -0500, Michael DeHaan wrote:
>
>
>>>>>>> anaconda has an %include directive, but that only works for
local
>>>>>>> files. [...]
>>>>>>>
>>>>>>>
>
>
>> Sorry, I'm /still/ not following what in Cobbler needs to change to
>> allow what you want to do. Anaconda include still works for those that
>> want to use it, so you don't seem to be in trouble there.
>>
>>
> Actually this is what this is all about. Anaconda's %include doesn't
> work. And even if it did work with http URLs to the cobbler server (or
> wgets) it would be the rendered kickstart file, which may have the
> variables wrong.
>
>
>
>> So far I don't see the need to change anything in Cobbler to let you
>> do what you want, [...]
>>
>>
> All I'm pleading for is for cobbler allowing to #include the parent
> kickstart file and the least that is needed if the location of it. See
> my original post and the external workaround I'm using to locate it
> and to pass as a variable back to cobbler.
>
> Anyway, let's forget about it, if I can't communicate the problem to
> you, then there probably is none. ;)
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> cobbler mailing list
> cobbler(a)lists.fedorahosted.org
>
https://fedorahosted.org/mailman/listinfo/cobbler
>
>
_______________________________________________
cobbler mailing list
cobbler(a)lists.fedorahosted.org
https://fedorahosted.org/mailman/listinfo/cobbler