Ansible takes the kitchen sink approach to functionality. There are over 800 modules available for use within Ansible at the time of writing this. In addition, there are numerous callback plugins, lookup plugins, filter plugins, and dynamic inventory plugins. Even with all of that functionality, there can still exist a need to add new functionality.
This chapter will explore the following ways in which new capabilities can be added to Ansible:
Developing modules
Developing plugins
Developing dynamic inventory plugins
Contributing code to the Ansible project