# Common class class sunetdrive::common { include sunet::tools include sunet::motd include apt include apparmor include sunet::packages::jq if $::facts['sunet_nftables_enabled'] != 'yes' { warning('Enabling UFW') include ufw } else { if $facts['networking']['hostname'] =~ /^kube[wc]/ { warning('Setting nftables to installed but disabled') ensure_resource ('class','sunet::nftables::init', { enabled => false }) } else { warning('Enabling nftables') ensure_resource ('class','sunet::nftables::init', { }) } } package {'sysstat': ensure => 'latest'} package {'needrestart': ensure => installed} service {'sysstat': provider => 'systemd'} file_line { 'enable_sa': ensure => 'present', line => 'ENABLED="true"', path => '/etc/default/sysstat', match => 'ENABLED="false"', require => Package['sysstat'], } file_line { 'sa_cron_comment': ensure => 'present', line => '# Activity reports every 2 minutes everyday', path => '/etc/cron.d/sysstat', match => '^#\ Activity\ reports\ every\ 10\ minutes\ everyday', require => Package['sysstat'], notify => Service['sysstat'], } file_line { 'sa_cron': ensure => 'present', line => '*/2 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1', path => '/etc/cron.d/sysstat', match => '^5-55/10', require => Package['sysstat'], notify => Service['sysstat'], } if $::facts['os']['distro']['id'] == 'Debian' { exec { 'sysstat_systemd_timer': command => 'systemctl enable --now sysstat-collect.timer', unless => 'systemctl is-enabled --quiet sysstat-collect.timer', } } }