Dealing with Inventory File Proliferation

Hi,

I’ve inherited a complex deployment system which is steadily getting more complex. This is fine, except we also have multiple instances of this system (several variants of Production and Dev plus many, many developer instances).

Currently all of our inventory files are long, very similar files with one or two things tweaked appropriately. This makes maintenance a nightmare where for every time I need to modify a feature, add a variable or remove something I have to manually edit upwards of ten non-trivial inventories.

Has anyone been in this sort of situation before?

Sorry for the lack of detail, I’m at the state where I’ve wondered around poking various ideas for long enough that I haven’t really got a clear direction and my brain’s gone fuzzy.

Cheers,

David

I’m facing a similar problem and the way I’m looking at solving it is dynamic inventories. I’ve also considered using multiple inventories + symlinks (nto sure that works tho). See: http://docs.ansible.com/ansible/intro_dynamic_inventory.html#using-inventory-directories-and-multiple-inventory-sources

I have all my hosts in an external data source, tagged, so I could easily have multiple tags to include hosts in different inventories and then generate them at runtime. This way management is as simple as adding an entry to the hosts table and one or more tags in the tags column.

hope that helps,

Spike

Could you move the common things to vars within the group so that all the host has for vars is the things that change?
jerry