Issue #7600 has been updated by Luke Kanies.

Daniel Pittman wrote:
> 
> I was about to respond to the rest of the discussion, but this reframes it to 
> something absolutely useful.  I have no problem defining a mechanism to act 
> on "resources not otherwise managed"; should defaults applied there drift 
> through to things in the catalog, or should they start from zero?

The best case would be a single kind of group operation that could either apply 
to resources in the catalog or resources on the host.

The big complication with that is that the catalog is the means of distributing 
this kind of information to the clients, so this operation's data 
representation likely needs to be in the catalog.  However, the catalog today 
can only store resources and edges, so either we expand it to store a whole new 
kind of "thing" (a group operation), or we abuse the existing formats to do 
group operations (which is what we're doing now).

The only alternative I can see is something like supporting it within the 
framework directly, to say "these types should be managed comprehensively".  
Kind of like how 'puppet inspect' treats catalogs differently than 'puppet 
apply', you could maybe have 'puppet purge' treat resource defaults differently 
than 'puppet apply' does (although in that case you'd need to pull the code 
down, so you had defaults, not just the catalog.

Hrm.  Or you could have a magical name:

<pre>
user { *: ensure => absent }
package { *: ensure => absent }
file { ["/etc/*", "/usr/*"]: ensure => absent }
service { *: ensure => stopped, enable => false }
</pre>

Now I'm really out of ideas. :)

----------------------------------------
Feature #7600: Need ability to remove all unmanaged resources
https://projects.puppetlabs.com/issues/7600

Author: Randall Hansen
Status: Investigating
Priority: Normal
Assignee: 
Category: 
Target version: 
Affected Puppet version: 
Keywords: puppetcamp-eu-2011
Branch: 


This works, purging all unmanaged hosts entries:

    resources { 'host': 
        purge => true, 
        noop => true,
    }

We should have a similar property for all (most?) types.

--

*This ticket is a request for comment, coming out of a discussion at Puppet 
Camp EU, 2011.  No promises whatever about implementation, but there were 
enough people interested to open a public discussion.*



-- 
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to