Hi all,
We're happy to announce that the Ansible 7.0.0 package has been released!
Ansible 7.0.0 will include ansible-core 2.14.0 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 6.x which included
ansible-core 2.13 and there may be backwards incompatibilities in the
core playbook language.
How to get it
-------------
This pre-release is available on PyPI and can be installed with pip:
```
$ pip install ansible==7.0.0 --user
```
The sources for this release can be found here:
Release tarball:
https://pypi.python.org/packages/source/a/ansible/ansible-7.0.0.tar.gzSHA256: 73144e7e602715fab623005d2e71e503dddae86185e061fed861b2449c5618ea
Wheel package:
https://files.pythonhosted.org/packages/py3/a/ansible/ansible-7.0.0-py3-none-any.whlSHA256: 2e9f519441780595ab173ac017210efc94c58633c9bc6e55917745d214cb4332
What's new in Ansible 7
---------------------------
Ansible 7 requires Python 3.9 on the controller, same as ansible-core 2.14.
Variables are now evaluated lazily; only when they are actually used. For example, in ansible-core 2.14 an expression ``{{ defined_variable or undefined_variable }}`` does not fail on ``undefined_variable`` if the first part of ``or`` is evaluated to ``True`` as it is not needed to evaluate the second part.
Collections added to Ansible 7:
* ibm.spectrum_virtualize (version 1.9.0)
* inspur.ispim (version 1.0.1)
* purestorage.fusion (version 1.1.1)
* vultr.cloud (version 1.1.0)
The previously deprecated servicenow.servicenow collection has been removed.
NOTE: Read the full Ansible 7 porting guide at
https://github.com/ansible/ansible/blob/devel/docs/docsite/rst/porting_guides/porting_guide_7.rst for complete details.
* The changelog for ansible-core 2.14 installed by this release of
ansible is available here:
https://github.com/ansible/ansible/blob/stable-2.14/changelogs/CHANGELOG-v2.14.rst* Collections which have opted into being a part of the Ansible-7
unified changelog will have an entry on this page:
https://github.com/ansible-community/ansible-build-data/blob/main/7/CHANGELOG-v7.rst* 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 7.0.0 ?
---------------------------------------------------------
* Please refer to the Ansible Project 7.0 Roadmap for more information about the upcoming
releases:
https://docs.ansible.com/ansible/devel/roadmap/COLLECTIONS_7.htmlPorting Help
-------------
A unified porting guide for collections which have opted-in is available here:
https://docs.ansible.com/ansible/devel/porting_guides/porting_guide_7.htmlGetting collection updates from Ansible 7 with older releases of ansible-core
-----------------------------------------------------------------
Ansible 6 includes ansible-core 2.13.x and users have expressed an interest
in getting collection updates as they ship in the Ansible "batteries
included" package while keeping an older version of ansible-core based
on their needs and requirements.
An ansible-galaxy requirements file based on the collections from
Ansible 7 has been made available for this use case:
https://github.com/ansible-community/ansible-build-data/blob/main/7/galaxy-requirements.yamlOnce the requirements file has been downloaded, the collections can be
installed by running:
"ansible-galaxy collection install -r galaxy-requirements.yaml"
On behalf of the Ansible community, thank you and happy automating!