The ansible project has re-organized how they release and distribute ansible. This change moves Fedora to be in sync with those changes and retires the old 'ansible classic/2.9.x' package in favor of a 'ansible' package that pulls in ansible-core (the engine) and includes all the collections in upstream ansible releases.
The upstream ansible project found that maintaining a single monolithic ansible package with everything included was not working well (source). Small changes had to wait for releases, some areas had no subject matter reviewers, it was difficult to try and handle all the issues and changes in a timely manner. So, the ansible engine was split off and then the rest of the content was moved to separate collections. These collections could then be maintained by communities that care about that area and could release at their own pace. A number of collections have agreed to release on the same cadence. These collections, along with the ansible-core engine comprise a upstream 'ansible' release.
The engine package (ansible-core) is already in Fedora 35+. Currently the 'ansible' package is 'ansible classic', ie, the 2.9.x version from before the reorganization. While Ansible 2.9.x will continue to be maintained from a security perspective until 2022, it is desireable to update to the latest release of both ansible-core and ansible in order to benefit from continued updates, bug fixes and improvements.
This change will modify the existing 'ansible' package to include the Ansible Collections that are provided in the upstream ansible releases from PyPi. The ansible package will not include ansible-core but will have a requirement (dependency) on it.
Having two separate packages will give users the ability to select the best option based on their needs:
'ansible' package needs to be modified for this change (work is in progress already).
Possibly policies for packaging collections?
On upgrade, ansible-2.9.x will be replaced by ansible-core + release collections. Ansible playbooks will continue to run as before.
Playbooks that run as expected under Ansible 2.9 may behave differently under Ansible 5 which effectively updates the (ansible-core) runtime from 2.9 to 2.12.
Users are encouraged to take a look at the available porting guides for both Ansible and ansible-core (https://docs.ansible.com/ansible/devel/porting_guides/porting_guides.html) and carefully test the behavior of their roles and playbooks in case of any adjustments are needed.
The Ansible community package follows semantic versioning rules, so incompatible changes are only made between major versions. Unfortunately in this case, there are a number of major versions between 2.9 and 5.0.
Users can remove the release collections and install separately packaged collections or install from ansible-galaxy.
Might need to conflict with some seperately packaged collections.
N/A (not a System Wide Change)
Ansible is now shipped as 'ansible-core' (the engine) and a curated set of Ansible collections. Users can use 'dnf install ansible' to install ansible-core as well as the Ansible collections included in the upstream Ansible releases. Users can also opt to 'dnf install ansible-core' and then install collections manually from standalone packages or via ansible-galaxy.
This is a community maintained site. Red Hat is not responsible for content.
© 2025 Red Hat, Inc. and others. Content is available under Attribution-Share Alike 4.0 International unless otherwise noted.
Fedora is sponsored by Red Hat. Learn more about the relationship between Red Hat and Fedora ยป