how to integrate version control tools
how to integrate version control tools like clearcase
There are a lot of answers to your question, which really relates to 'what kind of pipeline/workflow do you use to develop and manage your puppet code'
The workflow offered by Puppet Enterprise is Code Manager, which is a workflow centered around having a 'control repository' checked into git, which defines your external puppet module requirements in a Puppetfile. You can use that same workflow with r10k or puppet-librarian.
As far as I know, that only supports git, not mercurial/svn/clearcase/perforce/cvs.
Taking a step back, there are two different concerns that are blended in the above workflow... how to 'version control' your puppet code, and how to deploy your puppet code. If you have a different mechanism for deploying your code (putting it all in one directory and creating a tar/rpm/deb package, rsyncing it), you can keep those two concerns separate.
In the talk Scaling Puppet on AWS ECS with Terraform and Docker – Maxime Visonneau at PuppetConf 2016 [ slides ] He has a workflow where he uses librarian-puppet/r10k to gather all of the required modules/hieradata into one place, runs integration tests against that, and then creates a .deb package that he uses to install the configuration onto his puppet master (which is running in docker, and only using the 'production' environment). In that case, he has separated out the 'deployment' of his puppet code from the 'versioning/storage' of it.
Asked: 2017-04-05 10:53:44 -0500
Seen: 61 times
Last updated: Apr 06