--- - name: unload nouveau modprobe: name: nouveau state: absent ignore_errors: true - name: ubuntu pre-install tasks include_tasks: ubuntu-pre-install.yml when: ansible_distribution == 'Ubuntu' - name: redhat family pre-install tasks include_tasks: redhat-pre-install.yml when: ansible_os_family == 'RedHat' - name: install driver packages package: name: "{{ nvidia_driver_package_version | ternary('cuda-drivers='+nvidia_driver_package_version, 'cuda-drivers') }}" state: present register: install_driver - name: redhat family post-install tasks include_tasks: redhat-post-install.yml when: ansible_os_family == 'RedHat' - name: create persistenced override dir file: path: /etc/systemd/system/nvidia-persistenced.service.d/ state: directory recurse: yes - name: configure persistenced service to turn on persistence mode copy: src: nvidia-persistenced-override.conf dest: /etc/systemd/system/nvidia-persistenced.service.d/override.conf when: nvidia_driver_persistence_mode_on - name: remove persistenced service override file: path: /etc/systemd/system/nvidia-persistenced.service.d/override.conf state: absent when: not nvidia_driver_persistence_mode_on - name: enable persistenced systemd: name: nvidia-persistenced enabled: yes - name: reboot after driver install reboot: when: install_driver.changed and not nvidia_driver_skip_reboot