On Monday, May 25, 2015 at 11:25:35 PM UTC+10, Clayton O'Neill wrote:
>
> On Sunday, May 24, 2015 at 4:05:15 AM UTC-4, Alex Harvey wrote:
>
>> As part of an upgrade to Puppet 4, my team is considering to switch from 
>> an in-house tool that compiles puppet manifests into catalog against the 
>> installed version of Puppet
>> https://github.com/oldNoakes/puppet-validator
>>
>> Looking around it seems that others do things like puppet-lint, puppet 
>> parser validate, puppet-rspec and beaker in their pipelines.
>>
>> Do others also compile catalogs from their CI/CD systems?  If so, how do 
>> others do it?
>>
>
> We do before and after catalog compiles for every change pre-merge, and 
> push the results into Gerrit (the code review tool we use).  We have 
> jenkins jobs that pull back the puppet facts from every puppet master a few 
> times a day ,and we do the catalog compiles against every node type served 
> by every puppet master.  We've got some home grown scripts for doing this 
> that parallelizes the catalog compiles across multiple jenkins slaves and 
> across multiple cpus on each slave so it only takes a few minutes to run 
> the test.  We've found the before and after diff to be hugely useful. 
>  We're using R.I.Pienaar's catalog-diff tool, since rodjek's is a bit more 
> opinionated in ways that don't work as well for us.
>
> We've proposed a talk for PuppetConf to talk about this and some other 
> aspects of our CI/CD infra that might be common in other organizations, but 
> we've not seen many people talk about. 
>

Yes, I think that's a great idea.  The code we use also compiles catalogs 
for every node, but doesn't go as far as to tell us the differences before 
and after for every node.  If you have skeptical managers worried that 
Puppet could break every node in your system, your idea would give you a 
very high level of confidence that such things could never happen.

If I may ask, how do you actually compile the catalog though.  Are you 
using puppet master --compile or calling the internals directly?  Is your 
code publicly available?

-- 
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/3dab1a71-7ecc-473a-a270-1d0b1ffb1feb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to