34 lines
953 B
YAML
34 lines
953 B
YAML
---
|
|
- name: setup_nfs_mount
|
|
hosts: all
|
|
become: true
|
|
vars_prompt:
|
|
- name: nfs_server
|
|
prompt: "Enter NFS Server IP or hostname"
|
|
private: no
|
|
- name: nfs_server_path
|
|
prompt: "Enter remote path on the NFS server (e.g. /exports/media)"
|
|
private: no
|
|
- name: nfs_client_path
|
|
prompt: "Enter local mount path (e.g. /mnt/media)"
|
|
private: no
|
|
|
|
tasks:
|
|
- name: install_nfs_client_packages
|
|
ansible.builtin.package:
|
|
name: "{{ 'nfs-common' if ansible_os_family == 'Debian' else 'nfs-utils' }}"
|
|
state: present
|
|
|
|
- name: ensure_local_mount_dir_exists
|
|
ansible.builtin.file:
|
|
path: "{{ nfs_client_path }}"
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: configure_mount_nfs
|
|
ansible.posix.mount:
|
|
src: "{{ nfs_server }}:{{ nfs_server_path }}"
|
|
path: "{{ nfs_client_path }}"
|
|
fstype: nfs
|
|
opts: rw,sync,hard,intr
|
|
state: mounted |