--- # You may want to change the default to your favourite host (group) you run this on the most. - name: Arrange Inventory hosts: "{{ rthosts | default('CHANGE_ME') }}" order: inventory gather_facts: false # default: all in first step, but that shit requires (int) serial: 666 tasks: - name: Gather necessary facts ansible.builtin.setup: filter: "ansible_distribution*" - name: Group hosts by distribution file variety ansible.builtin.group_by: # We choose to lowercase anything here as there should be no collisions but # SUSE could be "SuSE" or "SUSE" (assumed and unverified, but you never know...) key: "adfv_{{ ansible_distribution_file_variety | lower | default('none') }}" tags: - always - name: Trigger Debian patching role on Debian hosts hosts: adfv_debian order: inventory gather_facts: false # default: all in first step, but that shit requires (int) serial: 666 tasks: - name: Debian Patches ansible.builtin.import_role: name: "patch_debian" tags: - debian - name: Trigger Red Hat patching role on Red Hat hosts hosts: adfv_redhat order: inventory gather_facts: false # default: all in first step, but that shit requires (int) serial: 666 tasks: - name: Red Hat Patches ansible.builtin.import_role: name: "patch_redhat" tags: - redhat - name: Trigger SUSE patching role on SUSE hosts hosts: adfv_suse order: inventory gather_facts: false # default: all in first step, but that shit requires (int) serial: 666 tasks: - name: SUSE Patches ansible.builtin.import_role: name: "patch_suse" tags: - suse