On 09/26/2012 11:45 PM, Andrey Brindeyev wrote:
Hi!
Is there any way to debug Cheetah template parsing errors?
Yesterday my kickstart works fine and now I start getting following very meaningless
error in /var/log/cobbler/cobbler.log:
====
Wed Sep 26 20:10:40 2012 - INFO | REMOTE generate_kickstart; user(?)
Wed Sep 26 20:10:40 2012 - INFO | generate_kickstart
Wed Sep 26 20:10:40 2012 - INFO | Exception occured: <type
'exceptions.NameError'>
Wed Sep 26 20:10:40 2012 - INFO | Exception value: global name 'out_path' is not
defined
Wed Sep 26 20:10:40 2012 - INFO | Exception Info:
File "/usr/lib/python2.6/site-packages/cobbler/remote.py", line 1970, in
_dispatch
return method_handle(*params)
File "/usr/lib/python2.6/site-packages/cobbler/remote.py", line 1000, in
generate_kickstart
return self.api.generate_kickstart(profile,system)
File "/usr/lib/python2.6/site-packages/cobbler/api.py", line 643, in
generate_kickstart
return self.kickgen.generate_kickstart_for_profile(profile)
File "/usr/lib/python2.6/site-packages/cobbler/kickgen.py", line 300, in
generate_kickstart_for_profile
return self.generate_kickstart(profile=g)
File "/usr/lib/python2.6/site-packages/cobbler/kickgen.py", line 278, in
generate_kickstart
data = self.templar.render(raw_data, meta, None, obj)
File "/usr/lib/python2.6/site-packages/cobbler/templar.py", line 112, in
render
data_out = self.render_cheetah(raw_data, search_table, subject)
File "/usr/lib/python2.6/site-packages/cobbler/templar.py", line 208, in
render_cheetah
if out_path is None:
====
I'm getting that error on both my kickstarts.
How can I understand which part of template is causing an error?
Andrey.
_______________________________________________
I suggest using #raw #end raw combination to eliminate sections of the
snippet till you get it rendered right and see which statement breaks
things. The opposite logic works too - enclose all snippet in this set
and start opening parts of it little by little. I use both methods
depending on the size and complexity of the snippet in question. There
is no need to do actual system builds - you can use getks option in
cobbler or see the rendered ks in the web interface.
--
Leon