main.yml (1168B)
1 --- 2 - name: Install NFS client 3 ansible.builtin.apt: 4 name: nfs-common 5 state: present 6 update_cache: true 7 tags: [nfs, install] 8 9 - name: Check if NFS already mounted 10 ansible.builtin.command: mountpoint -q {{ nfs_mountpoint }} 11 register: nfs_already_mounted 12 changed_when: false 13 failed_when: false 14 tags: [nfs, configure] 15 16 - name: Create NFS mount point 17 ansible.builtin.file: 18 path: "{{ nfs_mountpoint }}" 19 state: directory 20 mode: '0755' 21 when: nfs_already_mounted.rc != 0 22 tags: [nfs, configure] 23 24 - name: Look up group name for Jellyfin GID 25 ansible.builtin.command: getent group {{ jellyfin_gid }} 26 register: jellyfin_group_entry 27 changed_when: false 28 tags: [nfs, configure] 29 30 - name: Add user to GID {{ jellyfin_gid }} group for NFS write access 31 ansible.builtin.user: 32 name: "{{ vnc_user }}" 33 groups: "{{ jellyfin_group_entry.stdout.split(':')[0] }}" 34 append: true 35 tags: [nfs, configure] 36 37 - name: Mount NFS share and persist in fstab 38 ansible.posix.mount: 39 path: "{{ nfs_mountpoint }}" 40 src: "{{ nfs_server }}:{{ nfs_export }}" 41 fstype: nfs 42 opts: "{{ nfs_opts }}" 43 state: mounted 44 tags: [nfs, mount]