On Sunday, November 18, 2012 2:35:56 PM UTC-6, Walter Heck - OlinData.com wrote: > > Hello, > > On Sun, Nov 18, 2012 at 6:47 PM, Stefan Heijmans > <heij...@rechtspraak.nl <javascript:>> wrote: > > No, i's not, it is correct, see > > http://docs.puppetlabs.com/guides/scope_and_puppet.html > > > > At the moment you 'include mysql' only the top scope package variable is > > known, so there fore mysql package will be installed. > > swap them around and mysql-server package will get installed. > but I am specifically referring to _not_ the top-scope variable by > using $mysql_server::package. This is a scope that doesn't have that > variable (yet, anyway). I don't expect Puppet to just jump to a higher > level scope (top-scope in this case) to go and look for my variable > there. > >
I agree, it looks like a bug to me. A variable reference should never evaluate a variable that doesn't match the given name. I would file a ticket. The issue may be less straightforward than it first appears, however. Consider the difference between $mysql_server::package and $::mysql_server::package. In the vast majority of cases, I would expect them to evaluate to the same thing (including manifesting the same bug in this case). But what if there were also this class: class mysql::mysql_server { $package = 'mysql-server55' } Assume that mysql::mysql_server is declared before class mysql. What value do you then expect when class mysql dereferences $mysql_server::package? That is, do you get "mysql-server" from $::mysql_server::package or "mysql-server55" from $::mysql::mysql_server::package? I think you get the latter, and I think that's reasonable. Moreover, I would guess that the support for that behavior is where the bug is hiding. John -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/wGKqPfk4ZQgJ. 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.