/
/
/
1---
2- name: Create NFS export directories
3 file:
4 path: "{{ item.path }}"
5 state: directory
6 mode: '0755'
7 owner: root
8 group: root
9 loop: "{{ nas_nfs_exports }}"
10 become: true
11 when: nas_nfs_exports | length > 0
12
13- name: Create runner services NFS export directories
14 file:
15 path: "{{ item.path }}"
16 state: directory
17 mode: '0755'
18 owner: root
19 group: root
20 loop: "{{ nas_runner_exports }}"
21 become: true
22 when: nas_enable_runner_exports | default(false) and nas_runner_exports | length > 0
23
24- name: Generate NFS exports configuration
25 template:
26 src: exports.j2
27 dest: /etc/exports
28 backup: true
29 mode: '0644'
30 owner: root
31 group: root
32 become: true
33 notify:
34 - reload nfs exports
35 - restart nfs services
36
37- name: Ensure NFS services are configured
38 systemd:
39 name: "{{ item }}"
40 state: started
41 enabled: true
42 loop:
43 - rpcbind
44 - nfs-kernel-server
45 become: true
46
47- name: Configure NFS security settings
48 lineinfile:
49 path: /etc/default/nfs-kernel-server
50 regexp: '^{{ item.key }}='
51 line: "{{ item.key }}={{ item.value }}"
52 backup: true
53 loop:
54 - { key: "RPCNFSDOPTS", value: '"-N 2 -N 3"' }
55 - { key: "RPCMOUNTDOPTS", value: '"--manage-gids"' }
56 when: nas_nfs_secure_ports | bool
57 become: true
58 notify: restart nfs services
59
60- name: Check NFS exports status
61 command: exportfs -v
62 register: nfs_exports_status
63 changed_when: false
64 become: true
65
66- name: Display NFS exports
67 debug:
68 var: nfs_exports_status.stdout_lines