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: Ifab57201c962b084a1d531d788b25526cd899ce4
Related-Bug: https://github.com/ansible/ansible/issues/17687
This commit is contained in:
Jesse Pretorius 2016-09-22 15:46:20 +01:00
parent 0bac099637
commit c588ac18fd
4 changed files with 13 additions and 2 deletions

View File

@ -56,16 +56,19 @@
- trove-install
- include: trove_service_setup.yml
static: no
when: inventory_hostname == groups['trove_api'][0]
tags:
- trove-install
- include: trove_db_setup.yml
static: no
when: inventory_hostname == groups['trove_conductor'][0]
tags:
- trove-install
- include: trove_apache.yml
static: no
when: trove_use_mod_wsgi | bool
tags:
- trove-install

View File

@ -15,10 +15,13 @@
#
# (c) 2016 Donovan Francesco <donovan.francesco@is.co.za>
# (c) 2016 Paul Stevens <paul.stevens@is.co.za>
- include: trove_init_upstart.yml
static: no
when: pid1_name == "init"
- include: trove_init_systemd.yml
static: no
when: pid1_name == "systemd"
- name: Load service

View File

@ -15,9 +15,10 @@
#
# (c) 2016 Donovan Francesco <donovan.francesco@is.co.za>
# (c) 2016 Paul Stevens <paul.stevens@is.co.za>
- include: trove_install_apt.yml
when:
- ansible_pkg_mgr == 'apt'
static: no
when: ansible_pkg_mgr == 'apt'
- name: Create developer mode constraint file
copy:

View File

@ -10,6 +10,10 @@
src: https://git.openstack.org/openstack/openstack-ansible-memcached_server
scm: git
version: master
- name: openstack_hosts
src: https://git.openstack.org/openstack/openstack-ansible-openstack_hosts
scm: git
version: master
- name: lxc_hosts
src: https://git.openstack.org/openstack/openstack-ansible-lxc_hosts
scm: git