On 2014-03-12 15:35, Martijn Grendelman wrote:
Hi,
Please consider the following simplified code:
class apache::params {
$priority = 25
}
define apache::vhost (
$priority = $::apache::params::priority
) {
include apache::params
notify { "$name prio 1: $apache::params::priority": }
notify { "$name prio 2: $priority": }
}
apache::vhost { 'test': }
Is there ANY way that the notifys in the apache::vhost type would
display a different value? Shouldn't $apache::params::priority and
$priority not be the same?
I have a case where on /some/ nodes, $priority (and other parameters
that have defaults from $::apache::params that I omitted here) are
empty (undef). If I access $::apache::params::priority directly, the
correct value is presented.
This code is in use on many nodes, and most don't exhibit the problem.
Any idea what might be the problem here? I've been trying different
things for over an hour, and I'm afraid I'm losing my sanity...
You have an order of evaluation problem primarily. See here for an
explanation of in which order classes and defines are evaluated:
http://puppet-on-the-edge.blogspot.se/2014/04/getting-your-puppet-ducks-in-row.html
The problem is that you have not included the class (and thus not
defined the parameter $::apache::params::priority) at the time
you are instantiating the resource apache::vhost{test: }. If you instead
include the class prior to instantiating the resource it may work better.
(Or organize the thing differently once you read about the order classes
and defines are evaluated.)
- henrik
Best regards,
Martijn.
--
You received this message because you are subscribed to the Google
Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/4b344b14-de9b-446c-93e7-110d335f91cd%40googlegroups.com
<https://groups.google.com/d/msgid/puppet-users/4b344b14-de9b-446c-93e7-110d335f91cd%40googlegroups..com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.
--
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
Users" 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-users/m5om91%24i93%241%40ger.gmane.org.
For more options, visit https://groups.google.com/d/optout.