Issue #14343 has been updated by Russ Allbery.
We're also having the same problem with Debian stable systems running 2.7.14 on
the Puppet master from backports.debian.org. As mentioned above, it seems to
be specific to classes that inherit from and override other classes, and
involves facter facts used without a scope. Example manifests that triggered
the bug:
class s_weblogin::prod::webauth inherits s_weblogin::webauth {
Wallet["webauth/${fqdn}"] { ensure => absent }
}
class s_usenet::postfix inherits ::postfix {
$rootline = "[email protected] root@${hostname}\n"
$newsline = "[email protected] news@${hostname}\n"
Postfix::Map['/etc/postfix/senders'] {
content => "$rootline$newsline"
}
}
In both cases, adding two colons in front of the facter fact name made the
problem go away.
----------------------------------------
Bug #14343: undefined method twoscope_lookupvar while looking for top scope or
facter variables
https://projects.puppetlabs.com/issues/14343#change-63429
Author: konrad rzentarzewski
Status: Needs More Information
Priority: Normal
Assignee: Andrew Parker
Category: compiler
Target version:
Affected Puppet version: 2.7.14
Keywords:
Branch:
with upgrade to 2.7.14 comes the following error from puppetmasters:
err: Could not retrieve catalog from remote server: Error 400 on SERVER:
Puppet::Parser::AST::Variable failed with error NoMethodError: undefined method
`twoscope_lookupvar' for nil:NilClass at
/etc/puppet/site/modules/[...]/init.pp:2863 on node [...]
referenced module code is just a top scope or facter variable lookup, ie.
exec { "load-cluster-conf": command => "cman_tool version -r
$clusterversion" }
it seems that twoscope_lookupvar is not visible in puppet classes.
the following patch fixes this behaviour.
--
You have received this notification because you have either subscribed to it,
or are involved in it.
To change your notification preferences, please click here:
http://projects.puppetlabs.com/my/account
--
You received this message because you are subscribed to the Google Groups
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-bugs?hl=en.