Issue #19315 has been updated by R.I. Pienaar.
I think we should fail better but not allow this. You can't reference a resource with a hash namevar so best avoided. The work on the iteration in the DSL will address this need better ---------------------------------------- Bug #19315: puppet is buggy when using a hash as a $name https://projects.puppetlabs.com/issues/19315#change-83397 Author: James Shubin Status: Unreviewed Priority: Normal Assignee: Category: Target version: Affected Puppet version: Keywords: Branch: <pre> It turns out if you're doing some fancy puppet work, it is sometimes useful to use a hash as a $name var. In my particular case, I'm actually passing an array of hashes to a define (which ultimately causes the define to be called once for each hash). This actually works perfectly when run locally with puppet apply, however when running with puppet agent --test, it sometimes works and sometimes fails with: Error: Could not retrieve catalog from remote server: Could not intern from pson: Could not convert from pson: Could not find relationship source "Foo::Bar::My_define[sourcedmzaddress192.168.101.200]" The hash I used was: {'source' => 'dmz', 'address' => '192.168.101.200'} A few comments: 1. It's strange that the execution is not deterministic. Why does it sometimes work and sometimes not? 2. It's odd that it *always* works locally, but not always when through the puppet master. 3. The error message is confusing, not sure what it is trying to tell me. Thanks, James </pre> -- 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?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
