Today we're releasing Ansible 1.7, another major release of Ansible! Following our important Van Halen-based codename scheme, 1.7 is "Summer Nights", and 1.8 will be "You Really Got Me"
Ansible 1.7 features the previously mentioned Windows support (http://docs.ansible.com/intro_windows.html) in beta mode, as well as new inventory scripts for both SoftLayer and Windows Azure. Coming with Ansible 1.8, Windows will be fully supported and we expect many improvements to be added in that timeframe.
We’ve also included a fix for two security items which warrant an update. One deals with a legacy "with" construct syntax using Jinja2 brackets that could result in the injection of an undesirable call to a lookup module when using a variable that was sourced from untrusted/compromised hosts. This is ordinarily written as “with_items: foo” (which is not subject to this bug) and Ansible already warned about the correction of this syntax for modernization reasons, so it's unlikely to be in current Ansible playbooks. Another deals with the ability of the ansible-galaxy CLI tool to locally install a malformed tarball something that won’t happen when using ansible-galaxy against GitHub and our public server. The CVE numbers for these items are still pending and will be posted to ansible.com/security as soon as they are available.
In this release, we’ve added 13 new modules, 9 of which are Windows related. Additionally, there are new cloud provisioning modules for creating Windows Azure Guests!
A lot of our focus towards the end of this release was improving the nature of argument parsing, closing out any remaining issues that occurred as part of the 1.6 series security improvements, as well as resolution of a large set of unicode related fixes. We've also included numerous bug reports and a slew of new features / parameters to various modules, all of which are reflected in the module documentation, indicating "new in 1.7" on the various module pages beside those new parameters.
On top of all that, we’ve made some nice performance speedups for processing very large inventories, which will make a significant difference for those with 10,000 or more hosts.
The new “run_once: True” keyword on a task also allows for executing a quick local action, just once, at any point in a play, without starting a new play in the middle.
Not including patches on the 1.6.X series, amazingly, 208 people contributed code or documentation changes to the project. Thank you all! This brings the grand total of people who have contributed to the source to 813 unique contributors per github.com.
Moving forward into Ansible 1.8, we’ve got a wide variety of strategic features in mind, as well as plans to attack a really wide queue of great submissions in force.
Once again, a huge thanks everyone who contributed to the release and we hope you enjoy Ansible 1.7!
Ansible 1.7 can now be installed from the python package index via "pip install ansible" and distributions should be updating very shortly.