Hi

Forgot to mention: then you can have a snippet called puppet or vas or whatever 
and you put all the enable or disable checks in the snippet, hiding all that 
complexity from the ks. For example for our hadoop builds we don't want puppet 
so you can either make it part of build=hadoop or it can be disabled via the 
disable ksmeta variable.

So the ks would look like:

$SNIPPET(vas)
$SNIPPET(puppet)
SNIPPET(stornext)

Nice and clean; all complexity hidden.

--
Alastair Munro

-----Original Message-----
From: [email protected]
To: Nishanth Aravamudan <[email protected]>, "Antonio Sebastian Salles 
M." <[email protected]>, cobbler mailing list 
<[email protected]>
Cc: [email protected]
Sent: Fri, 27 Nov 2015 20:08
Subject: [cobbler] Re: Calling snippets from ksmeta

Hi

Have you tried backslashes or additional $s?

Maybe you are trying to use it in a way not intended? My understanding of 
snippets is to try and keep the ks templates easy to read, and in effect they 
are just include code. We just use a limited number of ksmeta variables. Mainly 
'build' 'enable' 'disable' 'addvol'. Then these are interpreted all over the ks 
and in snippets. So build=vm will give you a VM build. 'enable' is a comma 
delimited list of things to enable. Example's: vas, nimsoft, stornext. disable 
is similar; you can disable things that are normally switched on. 
disable=puppet. Then you can say #if not 'puppet' in disable. Addvol is a comma 
list of lvm volumes to add in vg_root addvol=/data:10240:lv_data. Point I am 
trying to make is you can switch functionality on and off via ksmeta variables; 
that is the way we use cheetah.

--
Alastair Munro

-----Original Message-----
From: "Antonio Sallés" <[email protected]>
To: Nishanth Aravamudan <[email protected]>, "Antonio Sebastian Salles 
M." <[email protected]>
Cc: [email protected]
Sent: Fri, 27 Nov 2015 2:25
Subject: [cobbler] Re: Calling snippets from ksmeta

On 11/25/2015 04:29 PM, Nishanth Aravamudan wrote:
> On 25.11.2015 [15:33:12 -0300], Antonio Sebastian Salles M. wrote:
>> Hi there,
>>
>> I'm looking the way for call a list of SNIPPETs using an array of
>> ksmeta variables, but finally cheeta doesn't like it. Something like
>> this:
>
> What does cheeta say?
>
>> cobbler ... --ksmeta="machinetype=kvm machineenv=db"
>> ...
>>
>> #set $machinetype = $getVar('$machinetype')
>> #set $machineenv = $getVar('$machineenv')
>> $SNIPPET('spacewalk/1/$machinetype')
>> $SNIPPET('spacewalk/1/$machineenv')
>
> You *might* need to evaluate this outside of the $SNIPPET call. THat is,
> try:
>
> #set $machinetypesnippet = 'spacewalk/1/$getVar('$machinetype')'
> #set $machineenvsnippet = 'spacewalk/1/$getVar('$machineenv')'
>
> $SNIPPET($machinetypesnippet)
> $SNIPPET($machineenvsnippet)
>
> Does that make any difference?
>
> -Nish
>
>

Hi,

Nop, it doesn't work neither.
This is the output:

8<-------------------

<class 'Cheetah.Parser.ParseError'>:

Error in the Python code which Cheetah generated for this template:
================================================================================

invalid syntax 
(cheetah_DynamicallyCompiledCheetahTemplate_1448583729_4_36017.py, line 554)

Line|Python Code
----|-------------------------------------------------------------
552 |
553 |''')
554 |        machinetypesnippet = 
'spacewalk/1/$getVar('VFSL([locals()]+SL+[globals(), 
__builtin__],"machinetype",True)')'
                                                           ^
555 |        write(u'''
556 |''')
557 |        _v = self.__errorCatcher19(localsDict=locals()) # 
u'$SNIPPET($machinetypesnippet)' on line 217, col 1

================================================================================

Here is the corresponding Cheetah code.
** I had to guess the line & column numbers, so they are probably incorrect:

Line 217, column 1

Line|Cheetah Code
----|-------------------------------------------------------------
214 |#set $machinetypesnippet = 'spacewalk/1/$getVar('$machinetype')'
215 |#set $machineenvsnippet = 'spacewalk/1/$getVar('$machineenv')'
216 |
217 |$SNIPPET($machinetypesnippet)
      ^
218 |$SNIPPET($machineenvsnippet)
219 |
8<-------------------

Any idea?
Thanks so much.

Antonio.
_______________________________________________
cobbler mailing list
[email protected]
https://lists.fedorahosted.org/admin/lists/[email protected]
_______________________________________________
cobbler mailing list
[email protected]
https://lists.fedorahosted.org/admin/lists/[email protected]

Reply via email to