From ca6b0d729ad1f1d896cd4305a49e42153b53f46e Mon Sep 17 00:00:00 2001 From: Kevin Carter Date: Thu, 4 Oct 2018 00:44:56 -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: I6258d23300c8b26469f8480aa042d53b91d90ad1 Signed-off-by: Kevin Carter --- tasks/main.yml | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index 706f8106..07ce46de 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -114,16 +114,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: "{{ swift_service_defaults | combine(service_var.init_config_overrides) }}" - with_items: "{{ filtered_swift_services }}" - loop_control: - loop_var: service_var + systemd_services: |- + {% set services = [] %} + {% for service in filtered_swift_services %} + {% + set _ = service.update( + { + 'enabled': 'yes', + 'state': 'started', + 'config_overrides': swift_service_defaults | combine(service.init_config_overrides) + } + ) + %} + {% set _ = service.pop('init_config_overrides') -%} + {% set _ = services.append(service) -%} + {% endfor %} + {{ services }} tags: - swift-config - systemd-service