diff --git "a/files/swh/deploy/worker/system-swh\\x2dworker.slice" "b/files/swh/deploy/worker/system-swh\\x2dworker.slice" new file mode 100644 index 0000000..1696b62 --- /dev/null +++ "b/files/swh/deploy/worker/system-swh\\x2dworker.slice" @@ -0,0 +1,5 @@ +[Unit] +Description=SWH workers + +[Slice] +MemoryMax=90% diff --git a/manifests/swh/deploy/worker/base.pp b/manifests/swh/deploy/worker/base.pp index 17d4b95..623b31e 100644 --- a/manifests/swh/deploy/worker/base.pp +++ b/manifests/swh/deploy/worker/base.pp @@ -1,62 +1,73 @@ # Base worker profile class profile::swh::deploy::worker::base { include ::systemd $systemd_template_unit_name = 'swh-worker@.service' $systemd_template_unit_file = "/etc/systemd/system/${systemd_template_unit_name}" $systemd_unit_name = 'swh-worker.service' $systemd_unit_file = "/etc/systemd/system/${systemd_unit_name}" + $systemd_slice_name = 'system-swh\x2dworker.slice' + $systemd_slice_file = "/etc/systemd/system/${systemd_slice_name}" $systemd_generator = '/lib/systemd/system-generators/swh-worker-generator' $config_directory = '/etc/softwareheritage/worker' package {'python3-swh.scheduler': ensure => installed, } file {$systemd_template_unit_file: ensure => 'present', owner => 'root', group => 'root', mode => '0644', source => "puppet:///modules/profile/swh/deploy/worker/${systemd_template_unit_name}", notify => Exec['systemd-daemon-reload'], } file {$systemd_unit_file: ensure => 'present', owner => 'root', group => 'root', mode => '0644', source => "puppet:///modules/profile/swh/deploy/worker/${systemd_unit_name}", notify => Exec['systemd-daemon-reload'], } + file {$systemd_slice_file: + ensure => 'present', + owner => 'root', + group => 'root', + mode => '0644', + source => "puppet:///modules/profile/swh/deploy/worker/${systemd_slice_name}", + notify => Exec['systemd-daemon-reload'], + } + file {$systemd_generator: ensure => 'present', owner => 'root', group => 'root', mode => '0755', source => 'puppet:///modules/profile/swh/deploy/worker/swh-worker-generator', notify => Exec['systemd-daemon-reload'], } file {$config_directory: ensure => 'directory', owner => 'swhworker', group => 'swhdev', mode => '0644', purge => true, recurse => true, } service {'swh-worker': ensure => running, enable => true, require => [ Exec['systemd-daemon-reload'], File[$systemd_template_unit_file], File[$systemd_unit_file], File[$systemd_generator], ], } }