Ansible 2.0.1 RC1 is available for testing!

Hi all, we’re happy to announce the RC1 release candidate for Ansible 2.0.1!

This release candidate includes many bug fixes since the 2.0 release:

  • Fixes a major compatibility break in the synchronize module shipped with
    2.0.0.x. That version of synchronize ran sudo on the controller prior to
    running rsync. In 1.9.x and previous, sudo was run on the host that rsync
    connected to. 2.0.1 restores the 1.9.x behaviour.
  • Additionally, several other problems with where synchronize chose to run when
    combined with delegate_to were fixed. In particular, if a playbook targetted
    localhost and then delegated_to a remote host the prior behavior (in 1.9.x
    and 2.0.0.x) was to copy files between the src and destination directories on
    the delegated host. This has now been fixed to copy between localhost and
    the delegated host.
  • Fix a regression where synchronize was unable to deal with unicode paths.
  • Fix a regression where synchronize deals with inventory hosts that use
    localhost but with an alternate port.
  • Fixes a regression where the retry files feature was not implemented.
  • Fixes a regression where the any_errors_fatal option was implemented in 2.0
    incorrectly, and also adds a feature where any_errors_fatal can be set at
    the block level.
  • Fix tracebacks when playbooks or ansible itself were located in directories
    with unicode characters.
  • Fix bug when sending unicode characters to an external pager for display.
  • Fix a bug with squashing loops for special modules (mostly package managers).
    The optimization was squashing when the loop did not apply to the selection
    of packages. This has now been fixed.
  • Temp files created when using vault are now “shredded” using the unix shred
    program which overwrites the file with random data.
  • Some fixes to cloudstack modules for case sensitivity
  • Fix non-newstyle modules (non-python modules and old-style modules) to
    disabled pipelining.
  • Fix fetch module failing even if fail_on_missing is set to False
  • Fix for cornercase when local connections, sudo, and raw were used together.

How do you get it?

excellent. I was excited to see the diff[‘prepared’] (plugins/callback/) made into this release, but a little bummed that AnsibleModule._diff did not. Do you have a release target for that? (https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/basic.py#L1144)

That was my mistake, `diff['prepared']` should be for 2.1 and was not
scheduled for this release. We can probably leave it in as itis not
used. New features are not included in maintenance releases, which is
why the rest of the diff improvements did not make it in.

Would be nice, if my PR https://github.com/ansible/ansible/pull/12909 would finally make it into ansible.
Now that SLES-12.1 is out, we hit the bug there, too.

Unofficial rpms of 2.0.1rc1 for Fedora and EPEL (CentOS/RHEL/etc) are
now available in this copr repository:
https://copr.fedorainfracloud.org/coprs/toshio/ansible-upstream/

-Toshio

Thanks for saying something. We've mainly been concentrating on
regressions in 2.0.0 versus 1.9.x for 2.0.1 so other bugs haven't
gotten the attention we would like. This change was small and simple
to review so we went ahead and merged it to devel and stable-2.0. if
we do a 2.0.1rc2 this will get into 2.0.1 otherwise it will go into
2.0.2 when we make that release.

-Toshio