1 class role::file_store (
2 Optional[Array] $nfs_mounts = ["cardano"],
3 Optional[String] $mountpoint = "/fichiers1",
5 include "base_installation"
7 include "profile::fstab"
8 include "profile::tools"
9 include "profile::monitoring"
10 include "profile::kerberos::client"
11 include "profile::wireguard"
13 unless empty($mountpoint) {
15 server_enabled => true,
17 nfs_v4_export_root => '/exports',
18 nfs_v4_export_root_clients => 'localhost(rw)',
19 require => Mount[$mountpoint],
22 $nfs_mounts.each |$nfs_mount| {
23 file { "$mountpoint/$nfs_mount":
24 ensure => "directory",
28 require => Mount[$mountpoint],
30 nfs::server::export { "$mountpoint/$nfs_mount":
34 clients => "immae.eu(rw,secure,sync,all_squash,sec=krb5p)",