Managing code with r10k

r10k is a code management tool that allows you to manage your environment configurations (such as production, testing, and development) in a source control repository.

Based on the code in your control repo branches, r10k creates environments on your master and installs and updates the modules you want in each environment. If you are running PE 2015.3 or later, we encourage you to use Code Manager, which uses r10k in the background to automate the deployment of your code. If you use Code Manager, you won't need to manage or interact with r10k manually. To learn more about Code Manager and begin setup, see the Code Manager page. However, if you're already using r10k and aren't ready to switch to Code Manager, you can continue using r10k alone.

To set up r10k to manage your environments:

  1. Set up a control repository for your code.
  2. Create a Puppetfile to manage the content for your environment.
  3. Configure r10k. Optionally, you can also customize your r10k configuration in Hiera.
  4. Run r10k to deploy your environments and modules.

We've also included a reference of r10k subcommands.