Issue #2905 has been updated by Luke Kanies. Subject changed from resource bucket / shadow manifest to Puppet should retain information about what's managed to facilitate removing no-longer-managed resources Status changed from Unreviewed to Needs design decision
I've been thinking about this basic idea for a long time, thinking of it more as three way merge than a 'shadow catalog' or whatever, but it's the same idea. I'd also like it to integrate with ralsh well enough that ralsh would tell you when you were modifying a managed resource, and you could even have policies to say that if a resource is modified outside of Puppet then Puppet should just warn of a merge problem rather than overwrite the change. In terms of reversion, yeah, you need some ability to do the opposite of an exec, but I think essentially everything else can be pretty easily reverted without any additional parameters, as long as you have a filebucket, package source, etc. There will always be some stragglers, but it shouldn't be too bad. I've made some progress toward this in a branch (feature/event_manager/rollback in my repo), and it does successfully roll limited transactions back. There's still a ton more to do, though. Could you split this into separate tickets, one for the 'remove no longer managed' bits and one for the 'ability to revert any change' bit? ---------------------------------------- Feature #2905: Puppet should retain information about what's managed to facilitate removing no-longer-managed resources http://projects.reductivelabs.com/issues/2905 Author: konrad rzentarzewski Status: Needs design decision Priority: Normal Assigned to: Category: Target version: Affected version: 0.25.1 Keywords: Branch: all resources used in manifest should be recorded and stored in "shadow manifest" and then applied with "ensure => absent" while they dissapear from "real manifest". this would be an elegant way to purge configuration on servers that has been removed from pp's. additionally "revert" metaparameter should be defineable (possibly with default value of false - for compatibility). it could be true (ie. for files, crons, etc - where removal method is obvious) or specific command to execute (ie. for reverting exec's and other non-obvious types). optionally puppetmaster should log where there's garbage left on puppets (ie. things removed from "real manifest" but not reverted from "shadow manifest"). -- 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://reductivelabs.com/redmine/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.
