Puppet Class: mailhog::service
- Defined in:
- manifests/service.pp
Overview
Class to manage the mailhog service.
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'manifests/service.pp', line 4
class mailhog::service {
if $mailhog::manage_service {
case $mailhog::service_provider {
'debian','init','redhat': {
file { 'mailhog service file':
path => "/etc/init.d/${mailhog::service_name}",
content => template("mailhog/mailhog.init.${facts['os']['family']}.erb"),
mode => '0755',
notify => Service['mailhog'],
}
}
'systemd': {
::systemd::unit_file { "${mailhog::service_name}.service":
content => template('mailhog/mailhog.service.erb'),
before => Service['mailhog'],
}
}
default: {
fail("Service provider ${mailhog::service_provider} not supported")
}
}
case $mailhog::install_method {
'package': {
Service['mailhog'] {
subscribe => Package['mailhog'],
}
}
'archive': {}
default: {
fail("Installation method ${ mailhog::install_method} not supported")
}
}
service { 'mailhog':
ensure => running,
enable => true,
name => $mailhog::service_name,
provider => $mailhog::service_provider,
}
}
}
|