Issue #14343 has been updated by Justin Dow.

I'm having the same problem and only in a place where I'm inheriting a class 
and overriding a resource:
class rsyslog {

    file {
        "/etc/rsyslog.conf":
            require => Package["rsyslog"],
            ensure => file,
            mode => 0644,
            content => template("rsyslog/rsyslog.conf.erb"),
            notify => Service["rsyslog"];

    }
}
class zimbra::rsyslog inherits ::rsyslog {

    File["/etc/rsyslog.conf"] {
        content => template("rsyslog/rsyslog.conf.erb", 
"zimbra/rsyslog.conf.erb"),
    }
}

The error I get on each puppet run from any machine that includes 
zimbra::rsyslog is:

err: Could not retrieve catalog from remote server: Error 400 on SERVER: Failed 
to parse template rsyslog/rsyslog.conf.erb: undefined method 
`twoscope_lookupvar' for nil:NilClass at 
/etc/puppet/modules/zimbra/manifests/rsyslog.pp:4 on node xxxxxxxxx.xxxxxxx.xxx

I'm pushing the OP's patch right now to see if it resolves it for me.


----------------------------------------
Bug #14343: undefined method twoscope_lookupvar while looking for top scope or 
facter variables
https://projects.puppetlabs.com/issues/14343#change-63262

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.

Reply via email to