remove loop control when running include_role

When running an included role with_items + loop control is slow. This
change feeds the role the entire list of curated services which will
improve execution speed, especially when dealing with hundreds of hosts.

Change-Id: I48a303d12e749e6d27a7f57c6f2dd93a98d16f9c
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
This commit is contained in:
Kevin Carter 2018-10-04 00:56:43 -05:00 committed by Kevin Carter (cloudnull)
parent 6090bf7de4
commit b7e967c35b
1 changed files with 16 additions and 10 deletions

View File

@ -54,16 +54,22 @@
systemd_BlockIOAccounting: true
systemd_MemoryAccounting: true
systemd_TasksAccounting: true
systemd_services:
- service_name: "{{ service_var.service_name }}"
enabled: yes
state: started
execstarts: "{{ service_var.execstarts }}"
execreloads: "{{ service_var.execreloads | default([]) }}"
config_overrides: "{{ cinder_environment_overrides | combine(service_var.init_config_overrides) }}"
with_items: "{{ filtered_cinder_services }}"
loop_control:
loop_var: service_var
systemd_services: |-
{% set services = [] %}
{% for service in filtered_cinder_services %}
{%
set _ = service.update(
{
'enabled': 'yes',
'state': 'started',
'config_overrides': cinder_environment_overrides.update(service.init_config_overrides)
}
)
%}
{% set _ = service.pop('init_config_overrides') -%}
{% set _ = services.append(service) -%}
{% endfor %}
{{ services }}
tags:
- cinder-config
- systemd-service