We are planning to introduce version control for our servers team so we can keep our config files and code neat.
The server base are mostly Windows with some Linux and spread across several continents.
Since the main purpose of the project is to take control ( no pun intended) over config scripts spread and keep configfiles neat.
I am wondering if there are some existing best practices for structuring the repository. Unfortunately my google-fu fails me here. Apologies if this has been asked here already.
I can start with two repositories : 'scripts' and 'config files' , then create subdirectories as I go. However I am convinced this has been done before many many times and I would rather not repeat mistakes of others. Are there any good rules for organising data in 'scripts' and 'config files' directories?
As for choice of the source control system , I am leaning towards distributed VC system ( git, mercurial) that already have built in resilience for multisite deployment. Some other options are important too, i.e: authentication using groups in multiple LDAP servers (i.e. AD domains) and nice Windows GUI client to please windows users.
I think, you can start from exploring etckeeper (Keep Configs Under Control With Etckeeper on ServerWatch as QuickStart) and select SCM-backend (from supported), which have strong LDAP-abilities (I'm out of ideas here)