The files in this gist are for having Jenkins automatically manage a chef repository using git submodules. This allows for clean, clutter free management of individual cookbooks, and individual respositories for roles, environments and data bags in our chef-repo
.
The process relies on using Github (we use Github Enterprise) and Jenkins in combination with the Jenkins Github plugin to notify Jenkins when a repository has changed.
Our chef-repo
directory looks something like:
chef-repo
- cookbooks
- Each cookbook is a git submodule managed by Jenkins
- data_bags (git submodule managed by Jenkins)