Merge "Avoid unconditional fact gathering"

This commit is contained in:
Zuul 2020-04-02 16:50:26 +00:00 committed by Gerrit Code Review
commit 5b86b94307
2 changed files with 12 additions and 8 deletions

View File

@ -1,17 +1,12 @@
---
# NOTE(awiddersheim): Gather facts for all hosts as a
# first step since several plays below require them when
# building their configurations. The below 'gather_facts'
# set to 'false' is a bit confusing but this is to avoid
# Ansible gathering facts twice.
# building their configurations.
- name: Gather facts for all hosts
hosts: all
serial: '{{ kolla_serial|default("0") }}'
gather_facts: false
gather_facts: true
tasks:
- name: Gather facts
setup:
- name: Group hosts to determine when using --limit
group_by:
key: "all_using_limit_{{ (ansible_play_batch | length) != (groups['all'] | length) }}"
@ -40,5 +35,6 @@
delegate_to: "{{ item }}"
with_items: "{{ delegate_hosts }}"
# We gathered facts for all hosts in the batch during the first play.
when: item not in ansible_play_batch
when:
- not hostvars[item].module_setup | default(false)
tags: always

View File

@ -0,0 +1,8 @@
---
upgrade:
- |
Avoids unnecessary fact gathering using the ``setup`` module. This should
improve the performance of environments using fact caching and the Ansible
``smart`` fact gathering policy. See `blueprint
<https://blueprints.launchpad.net/kolla-ansible/+spec/performance-improvements>`__
for details.