Force Ansible to use dynamic includes

Ansible 2.1.1 introduces a regression in the way conditional
includes are handled which results in every task in the
included file being evaluated even if the condition for the
include is not met. This extends the run time significantly
for a deployment.

This patch forces all conditional includes to be dynamic.

Change-Id: I924d935b75388d9026f6de53154a7e8a3bea3f91
Related-Bug: https://github.com/ansible/ansible/issues/17687
This commit is contained in:
Jesse Pretorius 2016-09-22 11:29:10 +01:00
parent 4886213c8d
commit 3dc08f9478
4 changed files with 7 additions and 2 deletions

View File

@ -34,6 +34,7 @@
- always
- include: ceph_preinstall.yml
static: no
when:
- ceph_pkg_source != 'distro'
tags: ceph-preinstall
@ -42,6 +43,7 @@
tags: ceph-install
- include: ceph_install_python_libs.yml
static: no
when: openstack_service_venv_bin != ''
tags:
- ceph-install
@ -55,7 +57,7 @@
tags: ceph-config
- include: ceph_auth.yml
when: >
cephx | bool
static: no
when: cephx | bool
tags: ceph-auth

View File

@ -14,6 +14,7 @@
# limitations under the License.
- include: ceph_install_apt.yml
static: no
when:
- ansible_pkg_mgr == 'apt'
tags:

View File

@ -15,6 +15,7 @@
# limitations under the License.
- include: ceph_preinstall_apt.yml
static: no
when:
- ansible_pkg_mgr == 'apt'
tags:

View File

@ -14,6 +14,7 @@
# limitations under the License.
- include: ceph_all.yml
static: no
when: >
(inventory_hostname in groups['glance_api']
and glance_default_store == 'rbd')