On 05/12/2011 05:59 PM, Luke Baker wrote:
> Hey there,
> 
> I have the following class that defines an array:
> 
> class iptables::hyperion {
>   system_ips [
>     'ip',
>     'ip',
>     'ip',
>     ...
>   ]
> }
> 
> To use this variable in a template, I'm setting it to a 'local'
> variable in the node definition:
> 
> node 'mynode' inherits basenode {
>   include iptables::hyperion
>   $system_ips = $iptables::hyperion::system_ips
> 
>   class { iptables:
>     fragments => [ 'hyperion.erb']
>   }
> }
> 
> I can then access and use $system_ips in a template for that node (in
> this case, 'hyperion.erb'). Does this fit a common pattern? I know
> that in a template you can use 'scope.lookupvar('var')'. Should I be
> using said function in the template to access
> $iptables::hyperion::system_ips, instead of reassigning it in the node
> definition?
> 

Hi,

I try and wrap almost all templates in defines and make all variables
used by the template parameteres of those defines.

I don't need to care about scoping, I can sanely define default values
outside the template and I can document the set of required variables
( = mandatory parameters) easily.

Cheers,
Felix

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to