2.10.7

Latest release in branch 2.10
Released 5 years ago (February 09, 2021)

Software Ansible
Branch 2.10
Status
End of life
End of life February 09, 2021
First official release version 2.10.0
First official release date 5 years ago (September 22, 2020)
Environment
requirements
ansible-core: 2.10
Control Py: 2.7 / 3.5 - 3.9
Target Py: 2.6 - 2.7 / 3.5 - 3.9
PowerShell: 3 - 5.1
Release notes https://github.com/ansible-community/ansible-build-data/blob/main/2.10/CHANGELOG-v2.10.rst
Source code https://github.com/ansible-community/ansible-build-data
Documentation https://docs.ansible.com/ansible/latest/index.html
Download https://pypi.org/project/ansible/#history
Ansible 2.10 Releases View full list

What Is New in Ansible 2.10

Ansible 2.10 is a major restructuring release that splits the monolithic ansible package into ansible-base and separate collections. This change fundamentally alters how content is packaged and distributed.

Category Summary
New Features Introduction of Ansible Collections, new ansible-galaxy collection commands, and a new ansible.builtin namespace.
Major Changes Separation of modules and plugins from the core into collections. The ansible package now depends on ansible-base and several key collections.
Deprecated Many modules have been moved to collections and are deprecated in ansible-base. The async keyword is deprecated in favor of poll.
Bug Fixes Numerous fixes across various modules, plugins, and the core engine, including issues with vault, loops, and network facts.

Why was Ansible 2.10 split into collections?

The core change in 2.10 is the separation of the monolithic codebase into ansible-base and Ansible Collections. The ansible package you install now contains the engine (ansible-base) plus a curated set of collections.

This architecture lets collections update on their own release cycles, independent of the Ansible engine. You now manage most modules and plugins via ansible-galaxy collection install instead of a full Ansible upgrade.

What is the ansible.builtin namespace?

Modules and plugins that remain in the core engine now live in the ansible.builtin namespace. This includes essential modules like ansible.builtin.copy, ansible.builtin.template, and ansible.builtin.yum.

You can still use their short names (e.g., copy), but the fully qualified collection name (FQCN) is recommended for clarity and future-proofing. This change helps avoid naming conflicts with modules from other collections.

How do I install modules now?

You install collections using the ansible-galaxy client. The command ansible-galaxy collection install is now the primary way to add new community or vendor-supported content to your Ansible environment.

For example, to install the community general collection, you would run ansible-galaxy collection install community.general. This fetches and places the collection in the default directory, making its modules available for use in your playbooks.

What happened to the async keyword?

The async keyword for controlling task parallelism has been deprecated and replaced with poll. The functionality is identical; this is purely a rename for clarity.

In practice, you should update your playbooks. Change any async: 30 and poll: 10 directives to use poll: 30 instead. The old syntax will still work but will generate deprecation warnings.

FAQ

Is my existing playbook code broken in Ansible 2.10?
Probably not immediately, but you will see deprecation warnings for modules that have moved to collections. It's a good idea to start using Fully Qualified Collection Names (FQCNs) like ansible.builtin.copy to avoid future breaks.

Where did all the modules I use go?
They were moved to collections. The ansible package includes many common ones, but others are in collections like community.general or cisco.ios that you may need to install separately with ansible-galaxy.

Do I have to use the ansible.builtin namespace?
No, the short names for builtin modules still work. However, using the full ansible.builtin name is recommended to prevent conflicts once you start using other collections that might have modules with the same short name.

How does this affect my Ansible Tower/AWX setup?
You will need to ensure that the required collections are installed in your execution environments. This typically means updating your virtualenv or container images to include ansible-galaxy collection install commands for your dependencies.

What's the difference between ansible and ansible-base?
ansible-base is the core engine containing the runtime, core plugins, and a small set of essential modules. The ansible package is a metapackage that pulls in ansible-base along with a bundle of common collections to mimic the old monolithic install.

Releases In Branch 2.10

Version Release date
2.10.7 5 years ago
(February 09, 2021)
2.10.6 5 years ago
(January 27, 2021)
2.10.5 5 years ago
(January 05, 2021)
2.10.4 5 years ago
(December 01, 2020)
2.10.3 5 years ago
(November 04, 2020)
2.10.2 5 years ago
(November 03, 2020)
2.10.1 5 years ago
(October 13, 2020)
2.10.0 5 years ago
(September 22, 2020)
2.10.0rc1 5 years ago
(September 15, 2020)
2.10.0b2 5 years ago
(September 09, 2020)
2.10.0b1 5 years ago
(September 01, 2020)
2.10.0a9 5 years ago
(August 14, 2020)
2.10.0a8 5 years ago
(August 06, 2020)
2.10.0a7 5 years ago
(July 30, 2020)
2.10.0a5 5 years ago
(July 27, 2020)
2.10.0a6 5 years ago
(July 27, 2020)
2.10.0a4 5 years ago
(July 24, 2020)
2.10.0a3 5 years ago
(July 16, 2020)
2.10.0a2 5 years ago
(July 05, 2020)
2.10.0a1 5 years ago
(June 18, 2020)