diff options
Diffstat (limited to 'modules/role/manifests')
-rw-r--r-- | modules/role/manifests/file_store.pp | 36 |
1 files changed, 6 insertions, 30 deletions
diff --git a/modules/role/manifests/file_store.pp b/modules/role/manifests/file_store.pp index d1f6a67..665a32b 100644 --- a/modules/role/manifests/file_store.pp +++ b/modules/role/manifests/file_store.pp | |||
@@ -26,36 +26,12 @@ class role::file_store ( | |||
26 | group => "nobody", | 26 | group => "nobody", |
27 | require => Mount[$mountpoint], | 27 | require => Mount[$mountpoint], |
28 | } | 28 | } |
29 | 29 | -> | |
30 | $hosts.each |$host_cn| { | 30 | nfs::server::export { "$mountpoint/$nfs_mount": |
31 | $host = find_host($facts["ldapvar"]["other"], $host_cn) | 31 | owner => "nobody", |
32 | if empty($host) { | 32 | group => "nobody", |
33 | fail("No host found for nfs") | 33 | ensure => "present", |
34 | } elsif has_key($host["vars"], "wireguard_ip") { | 34 | clients => template("role/file_store/nfs_clients.erb"), |
35 | $clients = sprintf("%s%s", | ||
36 | join($host["vars"]["wireguard_ip"], "(rw,secure,sync,all_squash) "), | ||
37 | "(rw,secure,sync,all_squash)") | ||
38 | nfs::server::export { "$mountpoint/$nfs_mount": | ||
39 | owner => "nobody", | ||
40 | group => "nobody", | ||
41 | ensure => "present", | ||
42 | clients => $clients, | ||
43 | } | ||
44 | } elsif has_key($host["vars"], "host") { | ||
45 | nfs::server::export { "$mountpoint/$nfs_mount": | ||
46 | owner => "nobody", | ||
47 | group => "nobody", | ||
48 | ensure => "present", | ||
49 | clients => "${host[vars][host][0]}(rw,secure,sync,all_squash)", | ||
50 | } | ||
51 | } else { | ||
52 | nfs::server::export { "$mountpoint/$nfs_mount": | ||
53 | owner => "nobody", | ||
54 | group => "nobody", | ||
55 | ensure => "present", | ||
56 | clients => "${host[vars][real_hostname][0]}(rw,secure,sync,all_squash)", | ||
57 | } | ||
58 | } | ||
59 | } | 35 | } |
60 | } | 36 | } |
61 | } | 37 | } |