puppet/nfs/manifests/init.pp

74 lines
1.7 KiB
Puppet

# Install NFS client.
#
class nfs::client {
include portmap::server
package { "nfs-utils":
ensure => installed,
}
service { "nfslock":
name => $operatingsystem ? {
"fedora" => "nfs-lock",
default => "nfslock",
},
ensure => running,
enable => true,
hasstatus => true,
require => [ Package["nfs-utils"],
Class["portmap::server"], ],
}
}
# Install and configure NFS server.
#
class nfs::server inherits nfs::client {
include portmap::server
file { "/etc/exports":
ensure => present,
source => [ "puppet:///files/nfs/exports.${fqdn}",
"puppet:///modules/nfs/exports", ],
mode => "0644",
owner => root,
group => root,
require => Package["nfs-utils"],
notify => Exec["exportfs"],
}
file { "/etc/sysconfig/nfs":
ensure => present,
source => "puppet:///modules/nfs/nfs.sysconfig",
mode => "0644",
owner => root,
group => root,
notify => Service["nfs"],
}
service { "nfs":
ensure => running,
name => $operatingsystem ? {
"fedora" => "nfs-server",
default => "nfs",
},
enable => true,
hasstatus => true,
require => [
Package["nfs-utils"],
Class["portmap::server"],
],
}
exec { "exportfs":
command => "exportfs -av",
path => "/bin:/usr/bin:/sbin:/usr/sbin",
refreshonly => true,
require => Service["nfs"],
}
}