Issue #21432 has been updated by Charlie Sharpsteen. Description updated
---------------------------------------- Bug #21432: Class declaration scope issue https://projects.puppetlabs.com/issues/21432#change-93623 * Author: Mickaël Canévet * Status: Unreviewed * Priority: Normal * Assignee: * Category: * Target version: * Affected Puppet version: * Keywords: * Branch: ---------------------------------------- Hi, I have a strange issue in puppet 2.7(.19 and .22) that I don't have with puppet 3(.0.0 and .2.2): First I install puppetlabs-postgresql in a temporary directory: <pre> mkdir modules puppet module install --modulepath modules puppetlabs-postgresql </pre> Then I test this simple code: <pre> puppet apply --noop --modulepath=modules/ -e "class {'::postgresql': } -> class {'::postgresql::server': }" </pre> It works (at least it compiles). Then I create a simple module: <pre> mkdir -p modules/my_module/manifests </pre< with a simple class doing the same thing as above: </pre> cat << EOF > modules/my_module/manifests/pgsql.pp class my_module::pgsql { class {'::postgresql': } -> class {'::postgresql::server': } } EOF </pre> When I try to apply it, it works: <pre> puppet apply --noop --modulepath=modules/ -e "include my_module::pgsql" </pre> But if I create another class my_module::postgresql, it fails: <pre> cat << EOF > modules/my_module/manifests/postgresql.pp class my_module::postgresql { class {'::postgresql': } -> class {'::postgresql::server': } } EOF </pre> With this error message: <pre> puppet apply --noop --modulepath=modules/ -e "include my_module::postgresql" Duplicate declaration: Class[Postgresql::Params] is already declared; cannot redeclare at modules/postgresql/manifests/init.pp:144 </pre> And now if I launch this: <pre> puppet apply --noop --modulepath=modules/ -e "include my_module::pgsql" </pre> I get: <pre> Duplicate declaration: Class[Postgresql] is already declared in file modules/my_module/manifests/pgsql.pp at line 2; cannot redeclare at modules/my_module/manifests/postgresql.pp:2 on node wrk8.wrk.lsn.camptocamp.com </pre> I think that in some case the '::' prefix before 'postgresql' is not well interpreted. -- 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 unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/groups/opt_out.
