Ansible 5.0.0 has been released

38 views
Skip to first unread message

David Moreau Simard

unread,
Nov 30, 2021, 11:39:43 AM11/30/21
to ansible-...@googlegroups.com, ansibl...@googlegroups.com, ansible...@googlegroups.com
Hi all,

We're happy to announce that the Ansible 5.0.0 package has been released !

Ansible 5.0.0 includes the newly released ansible-core 2.12 as well as
a curated set of Ansible collections to provide a vast number of
modules and plugins.
This is a major version update from Ansible 4.x which included
ansible-core 2.11 and there may be backwards incompatibilities in the
core playbook language.

Please see the porting guide (linked at the bottom) for details.

How to get it
-------------

Due to a limitation in pip, if you are upgrading from Ansible 3 (or
earlier), you need to uninstall ansible and ansible-base before
installing Ansible 5:

```
$ pip uninstall ansible ansible-base
$ pip install ansible==5.0.0 --user
```

The tar.gz of the release can be found here:

Ansible 5.0.0: https://pypi.python.org/packages/source/a/ansible/ansible-5.0.0.tar.gz
SHA256: 006504b4ba5f355073e0b3f10f317a5684c0ce7a35798b18fa18fbffaedab2a6

What's new in Ansible 5.0.0
---------------------------

* The changelog for ansible-core 2.12.0 installed by this release of
ansible is available here:
https://github.com/ansible/ansible/blob/stable-2.12/changelogs/CHANGELOG-v2.12.rst

* Collections which have opted into being a part of the Ansible-5
unified changelog will have an entry on this page:
https://github.com/ansible-community/ansible-build-data/blob/main/5/CHANGELOG-v5.rst

* ansible-core-2.12 now requires Python 3.8 or greater on the
controller (where you run ansible-playbook).

* Support for python 2.6 for managed nodes is deprecated in
ansible-core 2.12 and will be removed in ansible-core 2.13 (around May
2022)

* For collections which have not opted into the unified changelog, you
may find more information on https://galaxy.ansible.com or their
source repository. For example, the community.crypto collection would
be found at https://galaxy.ansible.com/community/crypto and you can
find a link to the source repository under the "Repo" button at the
top right.

What's the schedule for new Ansible releases after 5.0.0 ?
---------------------------------------------------------

* Maintenance releases of Ansible 5.x will occur approximately every
three weeks (Ansible 5.1.0, Ansible 5.2.0, etc) until the release of
Ansible 6.0.0. They will contain bugfixes and new features but no
backwards incompatibilities.

* Except for ansible-2.9.x, older versions of ansible are no longer
seeing maintenance releases. If there is a desire for maintenance
releases of older versions, drop by a Community Working Group Meeting
to discuss how you can help:
https://github.com/ansible/community/tree/main/meetings#wednesdays

* The last expected release of Ansible 4.x will be 4.10 around
December 14th 2021.

Porting Help
-------------

A unified porting guide for collections which have opted-in is available here:
https://docs.ansible.com/ansible/devel/porting_guides/porting_guide_5.html

On behalf of the Ansible community, thank you and happy automating !

David Moreau Simard

unread,
Dec 2, 2021, 1:10:30 PM12/2/21
to ansible-...@googlegroups.com, ansibl...@googlegroups.com, ansible...@googlegroups.com
Hi all,

It was brought to our attention that attempting to install Ansible 5
could fail due to the new ansible-core requirement on python >=3.8.

Ansible 5.0.1 raises the python requirement from >=2.7 to >=3.8 in
order to match ansible-core. The content of 5.0.1 is otherwise
identical to 5.0.0.
In addition, the Ansible 5.0.0 release has been removed (yanked) from
PyPI in order to allow pip to correctly fall back to Ansible 4.x and
ansible-core 2.11 if the python3.8 requirement is not met.

If you would like to use the updated set of collections that are
included with Ansible 5 while using ansible-core 2.11, a
galaxy-requirements.yaml file has been made available:
https://github.com/ansible-community/ansible-build-data/blob/main/5/galaxy-requirements.yaml

Once the requirement file has been downloaded, collections can be
installed by running "ansible-galaxy collection install -r
galaxy-requirements.yaml".

Getting Ansible 5.0.1
--------------------

Due to a limitation in pip, if you are upgrading from Ansible 3 (or
earlier), you need to uninstall ansible and ansible-base before
installing Ansible 5:
```
$ pip uninstall ansible ansible-base
$ pip install ansible==5.0.0 --user
```

The tar.gz of the release can be found here:
Ansible 5.0.1: https://pypi.python.org/packages/source/a/ansible/ansible-5.0.1.tar.gz
SHA256: b47cc704bbb69fb387bdaa24a1cb0c5ef0a4253763fd3315ef93ba6ae3a5c376

On behalf of the Ansible community, thank you and happy automating !

David Moreau Simard

unread,
Dec 6, 2021, 12:34:02 PM12/6/21
to ansible-...@googlegroups.com, ansibl...@googlegroups.com, ansible...@googlegroups.com
Hello once again,

It turns out that yanking version 5.0.0 from PyPI was insufficient as
older versions of pip would not take it into account and insist on
trying to install 5.0.0.

5.0.0 has now been deleted from PyPI which should result in older
versions of pip choosing the appropriate version of the package based
on the version of python:
- for python>=3.8: ansible==5.0.1 (ansible-core 2.12)
- for python<3.8: ansible==4.9.0 (ansible-core 2.11)

Users may, at their discretion, continue using ansible-core 2.11 along
with the latest versions of Ansible collections that ship in Ansible 5
by using an ansible-galaxy requirements file that we have made
available:
https://github.com/ansible-community/ansible-build-data/blob/main/5/galaxy-requirements.yaml

Other potential alternatives have been suggested by Jeff Geerling and
you can read more about them on his blog (thanks geerlingguy!):
https://www.jeffgeerling.com/blog/2021/install-python-39-on-raspberry-pi-os-or-debian-10-ansible-or-other-uses

It is only fair to apologize for the inconveniences surrounding the
release of 5.0.0 -- we plan on improving our test coverage in order to
prevent similar occurrences in the future.

On behalf of the Ansible community, thank you and happy automating !

Reply all
Reply to author
Forward
0 new messages