aboutsummaryrefslogtreecommitdiffstats
path: root/roles/nfsd/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/nfsd/tasks/main.yml')
-rw-r--r--roles/nfsd/tasks/main.yml48
1 files changed, 48 insertions, 0 deletions
diff --git a/roles/nfsd/tasks/main.yml b/roles/nfsd/tasks/main.yml
new file mode 100644
index 0000000..2f64fdb
--- /dev/null
+++ b/roles/nfsd/tasks/main.yml
@@ -0,0 +1,48 @@
+
+# nfsd ~~ roles/nfsd/tasks/main.yml
+# setup nfs daemon for a list of hosts
+
+---
+
+- debug:
+ var: nfsd_dirs
+
+- name: ensure nfsd required variables are set
+ fail:
+ when: item == "undefined"
+ loop:
+ - "{{ nfsd_dirs }}"
+
+- name: ensure nfsd directory exists
+ file:
+ path: "{{ nfsd_dir }}"
+ owner: root
+ mode: 0700
+ state: directory
+
+- name: ensure directories exists
+ file:
+ path: "{{ nfsd_dir }}/{{ item }}"
+ owner: root
+ mode: 0700
+ state: directory
+ loop: "{{ nfsd_dirs.split(' ') if nfsd_dirs is string else nfsd_dirs }}"
+
+- name: generate /etc/exports configuration
+ template:
+ src: etc-exports.j2
+ dest: /etc/exports
+ owner: root
+ mode: 0600
+
+- name: include *BSD specific configuration
+ include_tasks: "_{{ ansible_distribution | lower }}.yml"
+
+- name: ensure required services are restarted and enabled
+ service:
+ name: "{{ item }}"
+ state: restarted
+ enabled: true
+ loop:
+ - mountd
+ - nfsd
remember that computers suck.