We try not to use stages at all, unless absolutely necessary and we would love to avoid them if we could.
Our puppet code is used on around ~3000 machines in a heterogeneous environment of both various hardwares, os boot systems and applications, so at times its an unnecessary evil It is my understanding that tidy now now creates a dependency on the file, but since this is run in the beginning, the tidy on the files which are created in post creates a loop. For all the other times we use tidy I was able to get around by splitting the tidy from the classes and simple including them, this is the last one I cant seem to get around. I did find another post about this and puppet 3, but no solution https://ask.puppetlabs.com/question/13431/how-do-i-work-around-puppet-3-semantics-change/ Unfortunately we have way to many variables, and while direct requires might be possible it would mean an entire rewrite of ~ 4 years of code, and many times we have run into conflicts anyway which finally forced us into this. Mostly the idea is that our (systems admin) configuration is run in main, specific user requirements are configured in apps, and only after all of that, do we declare the machine usable. Finally we ensure that things like puppet are running, where prior to that on a broken system it wouldn't be required anyway, and then apply certain safety checks, as with this cron which does a daily check to ensure puppet hasn't been disabled and mails a report which we can compare with puppet dashboards output. With out the stages this would literally require hundreds of "if defined" statements due to all the various configurations available. The "File[/etc/cron.d/puppetcheck.puppet.cron] -> Tidy[/etc/cron.d]" relationship is from the new design of tidy as explained in the post I linked above. The code I posted is simple called in a class that is set to stage post. -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/8972ab55-6b62-499c-bd58-eb82d5593192%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.