On Mar 11, 10:29 am, Brian Gallew <g...@gallew.org> wrote: > I'm not sure what you mean by deduplicating. Puppet won't let you have > duplicate *anything*, exported or not.
To be more precise, Puppet won't let you declare two or more resources having the same name or title for the same node. That could actually help you, depending on what exactly you mean by "deduplicating". > If you mean "filtering", that's > doable, but any non-trivial filtering rule will require to you write evil > Puppet functions that hook into the internals. Maybe. There is no supported way to remove a resource declaration from a node's catalog during the compilation of that catalog, nor, at a higher level, to "uninclude" a class that you have included. BUT, you can include the same class any number of times without inducing duplication of the class or its contents, and you can realize / collect the same resource in multiple places or from multiple sources without causing it to be duplicated. Basically, Puppet does not provide "deduplication" in part because it does not provide duplication in the first place. The trick, of course, is all in what Puppet considers to be duplicate, and to the best of my knowledge, that's entirely based on resource names and titles. In addition, Puppet does provide some filtering capability for resource collection and realization. Filter criteria based on resource properties can be used to select specific resources to collect / realize, e.g.: File<<| tag == ''web-file" |>> What Puppet does not offer is any ability to filter resources after realization / collection, or based on what *other* resources are being realized / collected. John -- 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+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.