--- - name: nfs-kernel-server | Create the export directory trees block: - name: nfs-kernel-server | Create the directory of the NFS exports ansible.builtin.file: dest: "{{ item.path }}" state: directory owner: root group: root mode: "0755" loop: "{{ nfs_server_exports }}" tags: [san, nfs, storage, kernel_nfs] - name: nfs-kernel-server | Repositories and packages on EL block: - name: nfs-kernel-server | Install the NFS packages on EL ansible.builtin.yum: name: "{{ nfs_server_kernel_el_pkgs }}" state: present - name: nfs-kernel-server | Ensure that the Ganesha NFS server is not installed ansible.builtin.yum: name: nfs-ganesha state: absent when: ansible_distribution_file_variety == "RedHat" tags: [san, nfs, storage, kernel_nfs] - name: nfs-kernel-server | Repositories and packages on Ubuntu/Debian block: - name: nfs-kernel-server | Install the nfs packages on deb systems ansible.builtin.apt: pkg: "{{ nfs_server_kernel_deb_pkgs }}" state: present cache_valid_time: 1800 - name: nfs-kernel-server | Ensure that the ganesha server package is not installed ansible.builtin.apt: pkg: nfs-ganesha state: absent when: ansible_distribution_file_variety == "Debian" tags: [san, nfs, storage, kernel_nfs] - name: nfs-kernel-server | Manage the NFS exports block: - name: nfs-kernel-server | Create the NFS exports folder ansible.builtin.file: dest: /etc/exports.d owner: root group: root state: directory mode: "0755" - name: nfs-kernel-server | Install the NFS export files ansible.builtin.template: src: kernel-nfs-exports.j2 dest: /etc/exports.d/{{ item.name }}.exports owner: root group: root mode: "0644" loop: "{{ nfs_server_exports }}" register: update_exportfs - name: nfs-kernel-server | Ensure that the Kernel NFS service is started and enabled on EL ansible.builtin.service: name: nfs-server state: started enabled: true when: ansible_distribution_file_variety == "RedHat" - name: nfs-kernel-server | Ensure that the Kernel NFS service is started and enabled on deb systems ansible.builtin.service: name: nfs-kernel-server state: started enabled: true when: ansible_distribution_file_variety == "Debian" - name: nfs-kernel-server | Refresh the exports ansible.builtin.shell: exportfs -r when: update_exportfs is changed # noqa: no-handler changed_when: false tags: [san, nfs, storage, kernel_nfs, kernel_nfs_conf]