Version dependency management

Hi all -

We’re using Ansible, but haven’t gotten super advanced. I have a challenge where I’m doing rolling upgrades across thousands of systems. Due to business reasons (i.e. different groups owning different systems, applications, and parts of the infrastructure), I can’t schedule a mass deployment of the latest & greatest software.

I envision we’ll get there some day, but in the meantime, I need a way of saying which systems get which versions of software, while also tracking which systems have which versions.

For example, if in a (de-normalized) database, it would be something like:

System | Application Name | Version | Date deployed
host1 | Adam’s app | 1.0 | 1/5/2017
host1 | John’s app | 1.0 | 1/5/2017
host2 | Adam’s app | 1.3 | 1/20/2017

Has anyone had to do something like this? If so, can you share your experiences, and maybe any management software that has made this easier for you to integrate with Ansible?

Thanks in advance.

Hi Adam

I'd put the servers into groups, and then use group_vars to set
specific versions.

Thanks, Dick.