On 01 Feb 2016, at 19:15, Henrik Lindberg <[email protected]> wrote:
> > That is exactly what you should do. An external (file based epp) when called, > does not get to see variables in the scope from which it was called/used. > This design is deliberate. Think of the template as a function you are > calling, and you have to give it its arguments. In this case the documentation on the website is wrong: https://docs.puppetlabs.com/puppet/latest/reference/lang_template_epp.html#example-template The example just switches from template() to epp() function. According to your writing you must pass all parameters to the epp() function. > > Contrast this with the inline_epp, which you can think of as a > lambda/code-block. Here the code block gets to see the variables in scope, > since it is itself in that scope (part of the same piece of code). > Got it. To be honest: this is ugly. I always thought of epp() being a full replacement for template() without the scope issue. This especially feels bad, when we will have performance improvement for epp in the future. I need to rethink whether inline_epp() is the proper replacement for template() function. > This design makes the code more maintainable and templates more reusable. It > is also easier to test the templates (there is a command line utility (puppet > epp IIRC) that allows you to feed values into a templates and render the > result). > > Hope that helps > - henrik > >> >> Best, >> Martin >> > > > -- > > Visit my Blog "Puppet on the Edge" > http://puppet-on-the-edge.blogspot.se/ > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/puppet-dev/n8o7b5%24k5j%241%40ger.gmane.org. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/E26F3ED6-17F6-47FA-A215-2463253858ED%40gmail.com. For more options, visit https://groups.google.com/d/optout.
