diff options
author | Stonewall Jackson <stonewall@sacredheartsc.com> | 2023-02-04 01:23:43 -0500 |
---|---|---|
committer | Stonewall Jackson <stonewall@sacredheartsc.com> | 2023-02-04 01:52:13 -0500 |
commit | 0261e875679f1bf63c8d689da7fc7e014597885d (patch) | |
tree | 3f19cd74a0c1070944f75437f30b098d6ef2ffcb /roles/nfs_server/templates | |
download | selfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.tar.gz selfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.zip |
initial commit
Diffstat (limited to 'roles/nfs_server/templates')
-rw-r--r-- | roles/nfs_server/templates/etc/exports.j2 | 20 | ||||
-rw-r--r-- | roles/nfs_server/templates/etc/nfs.conf.j2 | 10 | ||||
-rw-r--r-- | roles/nfs_server/templates/etc/samba/shares.conf.j2 | 19 |
3 files changed, 49 insertions, 0 deletions
diff --git a/roles/nfs_server/templates/etc/exports.j2 b/roles/nfs_server/templates/etc/exports.j2 new file mode 100644 index 0000000..7f62ef5 --- /dev/null +++ b/roles/nfs_server/templates/etc/exports.j2 @@ -0,0 +1,20 @@ +{% for export in nfs_exports %} +{{ zfs_mountpoints[export.dataset] if export.dataset is defined else export.path }} {% if (export.options | default([])) %}-{% if export.options is string %}{{ export.options }}{% else %}{{ export.options | join(',') }}{% endif %}{%endif %} {% for client in export.clients %}{% if client is string %}{{ client }} {% else %}{{ client.client }}{% if (client.options | default([])) %}({% if client.options is string %}{{ client.options }}{% else %}{{ client.options | join(',') }}{% endif %}){% endif %}{% endif %} {% endfor %} + +{% endfor %} + +# user exports +{% for export in nfs_homedirs | selectattr('user', 'defined') %} +{% for subdir in ['pub', 'priv'] %} +{{ zfs_mountpoints[nfs_homedir_user_dataset] }}/{{ export.user }}/{{ subdir }} {% if (nfs_homedir_options | default([])) %}-{% if nfs_homedir_options is string %}{{ nfs_homedir_options }}{% else %}{{ nfs_homedir_options | join(',') }}{% endif %}{%endif %} {% for client in nfs_homedir_clients %}{% if client is string %}{{ client }} {% else %}{{ client.client }}{% if (client.options | default([])) %}({% if client.options is string %}{{ client.options }}{% else %}{{ client.options | join(',') }}{% endif %}){% endif %}{% endif %} {% endfor %} + +{% endfor %} +{% endfor %} + +# group exports +{% for export in nfs_homedirs | selectattr('group', 'defined') %} +{% for subdir in ['pub', 'priv'] %} +{{ zfs_mountpoints[nfs_homedir_group_dataset] }}/{{ export.group }}/{{ subdir }} {% if (nfs_homedir_options | default([])) %}-{% if nfs_homedir_options is string %}{{ nfs_homedir_options }}{% else %}{{ nfs_homedir_options | join(',') }}{% endif %}{%endif %} {% for client in nfs_homedir_clients %}{% if client is string %}{{ client }} {% else %}{{ client.client }}{% if (client.options | default([])) %}({% if client.options is string %}{{ client.options }}{% else %}{{ client.options | join(',') }}{% endif %}){% endif %}{% endif %} {% endfor %} + +{% endfor %} +{% endfor %} diff --git a/roles/nfs_server/templates/etc/nfs.conf.j2 b/roles/nfs_server/templates/etc/nfs.conf.j2 new file mode 100644 index 0000000..295f20d --- /dev/null +++ b/roles/nfs_server/templates/etc/nfs.conf.j2 @@ -0,0 +1,10 @@ +[gssd] +use-gss-proxy=1 + +[mountd] +port={{ nfs_mountd_port }} + +[nfsd] +vers2=n +vers3=y +vers4.0=n diff --git a/roles/nfs_server/templates/etc/samba/shares.conf.j2 b/roles/nfs_server/templates/etc/samba/shares.conf.j2 new file mode 100644 index 0000000..bb223ed --- /dev/null +++ b/roles/nfs_server/templates/etc/samba/shares.conf.j2 @@ -0,0 +1,19 @@ +{% for export in nfs_exports | selectattr('smb_share', 'defined') %} +[{{ export.smb_share }}] +path = {{ zfs_mountpoints[export.dataset] if export.dataset is defined else export.path }} +{% endfor %} + +{% for share in smb_shares %} +[{{ share.name }}] +path = {{ share.path }} +{% endfor %} + +{% if nfs_homedirs | selectattr('user', 'defined') %} +[users] +path = {{ zfs_mountpoints[nfs_homedir_user_dataset] }} +{% endif %} + +{% if nfs_homedirs | selectattr('group', 'defined') %} +[groups] +path = {{ zfs_mountpoints[nfs_homedir_group_dataset] }} +{% endif %} |