The lifecycle of an Ansible module

    • When a module is first accepted into Ansible, we consider it in tech preview and mark it . Modules in preview are not stable. You may change the parameters or dependencies, expand or reduce the functionality of preview modules. Many modules remain preview for years.
    • If a module’s target API changes radically, or if someone creates a better implementation of its functionality, we may mark it deprecated. Modules that are are still available but they are reaching the end of their life cycle. We retain deprecated modules for 4 release cycles with deprecation warnings to help users update playbooks and roles that use them.
    • When a module has been deprecated for four release cycles, we remove the code and mark the stub file removed. Modules that are removed are no longer shipped with Ansible. The stub file helps users find alternative modules.
    • Rename the file so it starts with an _, for example, rename old_cloud.py to _old_cloud.py. This keeps the module available and marks it as deprecated on the module index pages.
    • Reference the deprecation in the relevant .
    • Update ANSIBLE_METADATA to contain status: ['deprecated'].
    • Add deprecated: to the documentation with the following sub-values:

    Changing a module name