--- # see: https://wiki.archlinux.org/title/Solid_state_drive#Periodic_TRIM - name: Check if there is at least one SSD ansible.builtin.set_fact: has_at_least_one_ssd: "{{ ansible_facts.devices | dict2items | selectattr('value.rotational', 'equalto', '0') | list | length > 0 }}" changed_when: false - name: Skip trim role ansible.builtin.meta: end_play when: not has_at_least_one_ssd - name: Install trim tools ansible.builtin.package: name: util-linux state: present changed_when: false - name: Edit trim periodicity if needed ansible.builtin.template: src: templates/fstrim.timer.j2 dest: "/etc/systemd/system/fstrim.timer.d/override.conf" owner: root group: root mode: "0644" register: timer_config - name: Systemd daemon reload ansible.builtin.systemd: daemon_reload: true when: timer_config.changed - name: Enable periodic trim ansible.builtin.systemd: name: fstrim.timer enabled: true state: started changed_when: false - name: Install nvme-cli ansible.builtin.package: name: nvme-cli state: present changed_when: false