But Ansible does it all!!
Most people running networks have a decent fleet of Cisco IOS devices (or devices that feature "industry-standard" *cough* ripoff *cough* CLI). Often times, the discussion of Ansible as a framework comes up as the solution.    What does Ansible do?   Ansible is designed to express desired state, compare against existing state and then calculate whether a change is needed. A great example is that we'll generate a config file with a template, push this to a server, and then signal the relevant service (perhaps with a restart). Cool! Easy! But what if the config file is already the same as what we generated from template? No problem, we'll calculate that the files are the same and do nothing. No restart, no problem.. its already good.     This technique is highly effective for things like webservers where the service supports a consistent and suitable approach (in context, of course) for loading the new config.     kk.. cool but what is wrong with IOS?   IOS-like CLIs ar...