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.

Reply via email to