> In James Turnbull's book there's a good discussion on the variable > scoping issue (excellent book btw, a must have). He offered a I have it, and while a good book, I don't think my problems are with understanding the issues- I just want puppet to do things it can't.
> $ntp_servers = ['ntp01.example.com', > 'ntp02.example.com'] > > class zones::global { > $ntp_acls = [''] > include ntp > } See- now you're defining a role (ntp) and settings ($ntp_acls) for that role all in the same place. I wanted to use zones to define various settings and then just keep overriding them. If I include classes then the scoping rules prevent the variables in my zone class from being seen by my role class so that doesn't work either. What I've started doing is to use inheritance to build a variable tree: node global { ntp_servers = [''] } node zonenyc inherits global { $ntp_servers = ['10..1.1.10'] } node client inherits zonenyc { include roles::general } node ntpmaster inherits zonenyc { $ntp_servers = ['pool.ntp.org'] include roles::general include roles::ntpmaster } It's not nearly as clean as I would like, but at least I can override variables and accomplish most of what I want to do. -Don --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---