puppet-askbot/manifests/site/celeryd.pp

54 lines
1.5 KiB
Puppet

# == Class: askbot::site::celeryd
# This class describes the askbot celery daemon configuration
class askbot::site::celeryd (
$site_root,
) {
if ($::operatingsystem == 'Ubuntu') and versioncmp($::operatingsystemrelease, '16.04') >= 0 {
file { '/etc/systemd/system/askbot-celeryd.service':
ensure => present,
owner => 'root',
group => 'root',
content => template('askbot/askbot-celeryd.service.erb'),
require => Exec['askbot-migrate'],
}
service { 'askbot-celeryd':
ensure => running,
enable => true,
hasrestart => false,
require => File['/etc/systemd/system/askbot-celeryd.service'],
}
# This is a hack to make sure that systemd is aware of the new service
# before we attempt to start it.
exec { 'celeryd-systemd-daemon-reload':
command => '/bin/systemctl daemon-reload',
before => Service['askbot-celeryd'],
subscribe => File['/etc/systemd/system/askbot-celeryd.service'],
refreshonly => true,
}
} else {
file { '/etc/init/askbot-celeryd.conf':
ensure => present,
owner => 'root',
group => 'root',
mode => '0644',
content => template('askbot/celeryd.upstart.conf.erb'),
require => Exec['askbot-migrate'],
}
service { 'askbot-celeryd':
ensure => running,
enable => true,
hasrestart => true,
require => File['/etc/init/askbot-celeryd.conf'],
subscribe => [ Exec['askbot-migrate'], File["${site_root}/config/settings.py"] ]
}
}
}