I just went to +1 this on #3946. I ran into a very similar situation recently and was quite annoyed to find that the Providers didn't have a 'finish' equivalent to the Types.
Nan has a very good point that it needs to survive a dependency failure. Almost like all downstream providers after the failure should be able to look up a variable set in their parent path for failures to be able to make adjustments based on being called after a failure vice a normal chain. Thanks, Trevor On Mon, Jul 15, 2013 at 11:05 AM, Nan Liu <[email protected]> wrote: > On Sun, Jul 14, 2013 at 7:04 PM, badgerious <[email protected]> wrote: > >> >> Currently I'm doing a horrible monkey patch of Puppet::Transaction >>> (caveats implied): >>> https://github.com/vmware/**vmware-vmware_lib/blob/master/** >>> lib/puppet_x/puppetlabs/**transport.rb#L4-L13<https://github.com/vmware/vmware-vmware_lib/blob/master/lib/puppet_x/puppetlabs/transport.rb#L4-L13> >>> >>> I think there's an open ticket, and I would like to find a better option >>> for this as well. >>> >> >> Thanks Nan. Here is the ticket I think you were referring to: >> http://projects.puppetlabs.com/issues/3946 . Appears to be in languish >> mode at the moment. >> >> I started poking at another solution ( >> https://github.com/badgerious/puppet-finalizable/blob/master/lib/puppetx/badgerious/finalizable.rb), >> but ran out of steam before I could get it completely right. The idea there >> is to have a module you include in a type class which creates a sort of >> 'trailer resource' that has edges from all resources of the original type >> and calls back to the original type (via <type>.finalize) when it runs. >> Hacky, but a bit less dangerous than a straight monkey patch. I'll drop a >> note on this thread if I can make it go. >> > > I considered that option when I tackled this problem. The problem I ran > into is when a puppet resource fails the last resource (due to dependency) > does not get applied. So a failed puppet run did not clean up the > connections. I didn't get a chance to look too closely at your > code, apologize if it does something different. Thanks for digging up the > ticket, I hope a few more watchers will bump the priority. > > Thanks, > > Nan > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Developers" 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-dev. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- Trevor Vaughan Vice President, Onyx Point, Inc (410) 541-6699 [email protected] -- This account not approved for unencrypted proprietary information -- -- You received this message because you are subscribed to the Google Groups "Puppet Developers" 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-dev. For more options, visit https://groups.google.com/groups/opt_out.
