This question is concerning **methodology** and **approach** in handling a git repo, especially related to configuration management like puppet/chef/ansible.
Imagine you take up a job as a **"devops" engineer** somewhere and you are given ownership of a large Puppet config management codebase which is in a git repo. The codebase maintains the whole infrastructure of the company. ***How would you go about understanding the codebase?*** (It is assumed you are well versed in Puppet)
Yes, I know you can set up vagrant and test the code there but the codebase could be huge with several hundred modules making it hard and time consuming. I could also work my way down by starting from the `nodes -> roles -> profiles -> modules`. Another way I would approach it would be going through the git log right from the very first commit.
↧