aboutsummaryrefslogtreecommitdiff
path: root/manifests/server/service.pp
blob: 4bbe47f6496869d39d825f9f0cee895134451c52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
class samba::server::service ($ensure = running, $enable = true) {
  case $::osfamily {
      Redhat: { $service_name = 'smb' }
      Debian: { $service_name = 'smbd' }
      Gentoo: { $service_name = 'samba' }

      # Currently Gentoo has $::osfamily = "Linux". This should change in
      # Factor 1.7.0 <http://projects.puppetlabs.com/issues/17029>, so
      # adding workaround.
      Linux: {
        case $::operatingsystem {
          Gentoo:  { $service_name = 'samba' }
          default: { fail("$::operatingsystem is not supported by this module.") }
        }
      }
      default: { fail("$::osfamily is not supported by this module.") }
    }

  service { "$service_name" :
    ensure      => $ensure,
    hasstatus   => true,
    hasrestart  => true,
    enable      => $enable,
    require     => Class['samba::server::config']
  }

}