On Thursday, January 24, 2013 9:20:23 AM UTC-6, MCZ wrote: > > Its puppet 2.7.x latest, I chain resources like this: > > node 'puppetmaster-client' { > include base::route53::r53server > $primary_fqdn = 'puppetmaster.foo.bar' > base::route53::r53delegation { ["$primary_fqdn.",'xyz.foo.bar.']: > } ->Class['base::route53::r53server'] > } > > I really don't see the advantage of using the chain operator in that case. I would write this, instead:
base::route53::r53delegation { ["$primary_fqdn.",'xyz.foo.bar.']: require => Class['base::route53::r53server'] } It means the same thing, but it's clearer (to me) and exposes a smaller cross-section for bugs. Nevertheless, I don't think that's related to your problem. Having looked at your failure case, I suspect you have a parse-order issue. Moreover, I suspect that you are confusing order of resource application with parse order: only the former is affected by resource relationships, so I don't think the chain operator is doing what you expected. I think moving the declaration of class base::route53::r53server after that of the base::route53::r53delegation declarations will solve the problem by ensuring that the delegations are parsed (and their Dnsrecord resources exported) before the server class is parsed (and at that time collects the resources): node 'puppetmaster-client' { $primary_fqdn = 'puppetmaster.foo.bar' base::route53::r53delegation { ["$primary_fqdn.",'xyz.foo.bar.']: } include 'base::route53::r53server' # If you really do need chaining then put it here: } John -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/TvPoFRPkZP0J. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.