John Morrissey
2011-Sep-22 13:42 UTC
[Puppet Users] Accessing class variables set in another run stage
I have a class (pop_vars) that sets variables for other classes to consume.
This class runs in a separate stage, before any other stages or classes.
I''ve tried to distill this down to the example below.
However, I''m getting:
(Scope(Class[Apt_repos])) Could not look up qualified variable
''pop_vars::somevar''; class pop_vars has not been evaluated
in the Puppetmaster''s log output when one particular class (in a later
run
stage) tries to access these variables. This only occurs when this *one*
class tries to access these variables; other classes access them without a
problem.
This seems a lot like http://projects.puppetlabs.com/issues/4778, but
I''m
running the 2.6.2-5 packages from Debian squeeze, which includes the fix for
#4778 (65ef24e5...)
Am I doing something wrong? Is there a better way to do this?
john
modules/pop_vars/manifests/init.pp:
--
class pop_vars {
$somevar = ''value''
}
--
modules/base/manifests/debian.pp:
--
class { ''apt_repos'':
stage => ''repos'',
}
class base::debian inherits base::linux {
[...]
}
--
stage { ''var_init'':
before => Stage[''repos''],
}
stage { ''repos'':
before => Stage[''main''],
}
node default {
class { ''pop_vars'':
stage => ''var_init'',
}
include base::debian
}
--
John Morrissey _o /\ ---- __o
jwm@horde.net _-< \_ / \ ---- < \,
www.horde.net/ __(_)/_(_)________/ \_______(_) /_(_)__
--
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+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.