Dynamic Inventory: Past, Present & Future

The goal of this plugin type, was well, to make Ansible Engine even more pluggable. All kidding aside, we wanted to provide Ansible Engine content authors and Ansible Engine users a new way to visualize their target inventory. Using the ansible-inventory command, the targeted inventory will be listed with the details of the hosts in that inventory, and the hosts groups.

All of this data is being provided by our new AWS EC2 inventory plugin! Inventory plugins are a much simpler interface for Ansible Engine content providers to interact with the underlying inventory components. This inventory plugin will be provided as a tech-preview. Please provide feedback on it!

Most inventory plugins utilize simple yaml based configuration files to activate the plugin[1] and fine tune the data collected. Here's an example:

These plugins also have access to the inventory cache that is being built in Ansible Engine 2.5, also in tech preview. This inventory cache allows for users to combine the powers, so to speak, of other inventory plugins. For instance, imagine using any of the cloud inventory plugins to pull data about the instances and the constructed inventory plugin and jinja to build groups as decided by the user! This approach is much more flexible than before; where a content developer would have to build grouping into the dynamic inventory script itself.

I hope the information in this blog post is a great teaser to up and coming features. I plan on doing little teasers like these more often as we have new stuff coming in Ansible Engine. These posts will also coincide with a webinar. The webinar for this blog post can be found here!

Dylan is a Principal Product Manager, Ansible, Red Hat. Starting as an early Core community member in Ansible's early days, Dylan now manages product roadmap for Ansible Core. He’s a self-proclaimed Linux and OSS diehard, Internet geek, and father to #Ansipup Honey. You can follow him on twitter and GitHub at @Thaumos.