Latest in branch 9
9.13.0
Released 03 Dec 2024
(1 year ago)
SoftwareAnsible
Version9
Status
End of life
Environment
requirements
ansible-core: 2.16
Control Py: 3.10 - 3.12
Target Py: 2.7 / 3.6 - 3.12
PowerShell: 3 - 5.1
Initial release9.0.0
21 Nov 2023
(2 years ago)
Latest release9.13.0
03 Dec 2024
(1 year ago)
End of life03 Dec 2024
(Ended 1 year, 5 months ago)
Release noteshttps://github.com/ansible-community/ansible-build-data/blob/main/9/CHANGELOG-v9.rst
Source codehttps://github.com/ansible-community/ansible-build-data
Documentationhttps://docs.ansible.com/ansible/latest/index.html
Downloadhttps://pypi.org/project/ansible/#history
Ansible 9 ReleasesView full list

What Is New in Ansible 9

Ansible 9 brings a host of updates focused on refining the core engine and expanding module support. The key changes are summarized in the table below.

Category Key Changes
Core Engine & Language Python 3.9+ requirement, new `ansible-core` version 2.16, and Jinja2 improvements.
New Modules & Plugins Added and updated modules for cloud providers (AWS, Azure, GCP), containers, and networking.
Collections & Content Major version updates for key collections like `amazon.aws`, `community.docker`, and `cisco.ios`.
Deprecations & Removals Cleanup of deprecated features and modules from previous releases.
Bug Fixes & Stability Numerous fixes across modules, plugins, and the core engine for improved reliability.

What's the big deal with the Python 3.9 requirement?

Ansible 9 now requires Python 3.9 or newer. This shift unlocks modern Python features and libraries, allowing the codebase to drop legacy compatibility shims. In practice, this means a cleaner, more efficient execution environment.

You'll need to check your control node and managed nodes. This move aligns Ansible with supported Python versions across major Linux distributions, pushing you towards more secure and maintained runtime.

Which collections got major updates?

Several foundational collections have bumped their major versions, signaling significant changes. The amazon.aws and community.aws collections have been consolidated and updated with new modules and parameters for managing AWS resources.

The community.docker and kubernetes.core collections received updates for better container orchestration. For network automation, cisco.ios, arista.eos, and junipernetworks.junos collections include new features and bug fixes.

Always review the collection changelogs. Major version updates can include breaking changes to parameters or return values, so testing your playbooks is crucial.

Are there any new Jinja2 filters or tests I should use?

Yes, the Jinja2 templating engine has been updated, bringing its newer built-in filters and tests into play. This matters because you can write more concise and powerful templates directly in your playbooks and roles.

For example, filters for list manipulation and string handling have been enhanced. Check the Jinja2 documentation for the specific version bundled with ansible-core 2.16 to see what's newly available.

What deprecated features were finally removed?

Ansible 9 cleans house by removing features that were deprecated in Ansible 8 or earlier. This includes specific module parameters, certain inventory plugin options, and legacy variable names.

If your playbooks have been running with deprecation warnings, they will likely fail now. Run your playbooks with Ansible 8's verbose output to catch any warnings before upgrading.

FAQ

I'm on Python 3.8. Can I still use Ansible 9?
No. Ansible 9 mandates Python 3.9+. You must upgrade your Python runtime on all control and managed nodes. This is a hard requirement for the core engine and many collections.

My playbook uses the old `ec2_instance` module from `amazon.aws`. Will it break?
It might. The amazon.aws collection had a major version bump. While the module name may remain, parameters or return values could have changed. Consult the collection's porting guide and test thoroughly.

Does Ansible 9 change how I install collections?
The installation method via ansible-galaxy collection install remains the same. However, the default content index may point to newer, compatible versions. Pin your collection versions in requirements.yml for stability.

Are there performance improvements in this release?
Yes, but they are incremental. The update to ansible-core 2.16 includes various optimizations in module argument parsing and task execution. You might see minor speed gains in large inventories.

Where can I find a list of all bug fixes for my favorite module?
Check the changelog for the specific collection that contains the module. For example, fixes for the ios_command module are in the cisco.ios collection changelog. The main Ansible 9 changelog references these collection updates.

Releases In Branch 9

VersionRelease date
9.13.003 Dec 2024
(1 year ago)
9.12.005 Nov 2024
(1 year ago)
9.11.008 Oct 2024
(1 year ago)
9.10.010 Sep 2024
(1 year ago)
9.9.013 Aug 2024
(1 year ago)
9.8.016 Jul 2024
(1 year ago)
9.7.018 Jun 2024
(1 year ago)
9.6.106 Jun 2024
(1 year ago)
9.6.021 May 2024
(2 years ago)
9.5.124 Apr 2024
(2 years ago)
9.4.027 Mar 2024
(2 years ago)
9.3.027 Feb 2024
(2 years ago)
9.2.030 Jan 2024
(2 years ago)
9.1.005 Dec 2023
(2 years ago)
9.0.021 Nov 2023
(2 years ago)
9.0.121 Nov 2023
(2 years ago)
9.0.0b107 Nov 2023
(2 years ago)
9.0.0a317 Oct 2023
(2 years ago)
9.0.0a205 Oct 2023
(2 years ago)
9.0.0a128 Sep 2023
(2 years ago)