9.13.0

Latest release in branch 9
Released 1 year ago (December 03, 2024)

Software Ansible
Branch 9
Status
End of life
End of life December 03, 2024
First official release version 9.0.1
First official release date 2 years ago (November 21, 2023)
Environment
requirements
ansible-core: 2.16
Control Py: 3.10 - 3.12
Target Py: 2.7 / 3.6 - 3.12
PowerShell: 3 - 5.1
Release notes https://github.com/ansible-community/ansible-build-data/blob/main/9/CHANGELOG-v9.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 9 Releases View 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

Version Release date
9.13.0 1 year ago
(December 03, 2024)
9.12.0 1 year ago
(November 05, 2024)
9.11.0 1 year ago
(October 08, 2024)
9.10.0 1 year ago
(September 10, 2024)
9.9.0 1 year ago
(August 13, 2024)
9.8.0 1 year ago
(July 16, 2024)
9.7.0 1 year ago
(June 18, 2024)
9.6.1 1 year ago
(June 06, 2024)
9.6.0 1 year ago
(May 21, 2024)
9.5.1 1 year ago
(April 24, 2024)
9.4.0 2 years ago
(March 27, 2024)
9.3.0 2 years ago
(February 27, 2024)
9.2.0 2 years ago
(January 30, 2024)
9.1.0 2 years ago
(December 05, 2023)
9.0.0 2 years ago
(November 21, 2023)
9.0.1 2 years ago
(November 21, 2023)
9.0.0b1 2 years ago
(November 07, 2023)
9.0.0a3 2 years ago
(October 17, 2023)
9.0.0a2 2 years ago
(October 05, 2023)
9.0.0a1 2 years ago
(September 28, 2023)