From b7e967c35bff5d8ed240d349bf8c53d11b68b9f2 Mon Sep 17 00:00:00 2001 From: Kevin Carter Date: Thu, 4 Oct 2018 00:56:43 -0500 Subject: [PATCH] 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 --- tasks/cinder_install.yml | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/tasks/cinder_install.yml b/tasks/cinder_install.yml index 9145387c..67e1f907 100644 --- a/tasks/cinder_install.yml +++ b/tasks/cinder_install.yml @@ -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