aboutsummaryrefslogtreecommitdiff
path: root/personal_infra/puppet/modules/automatic_updates/manifests/init.pp
blob: 6ea1cdb0903f891442442cd3b15608b1b21feab9 (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
28
29
30
31
32
33
class automatic_updates {
  if ($facts['os']['family'] == 'Debian') {
    package {["unattended-upgrades", "apt-listchanges"]:}
  }
  elsif ($facts['os']['family'] == 'RedHat') {
    if ($facts['os']['release']['major'] == '7') {
      package {'yum-cron':}
      ->
      file {"/etc/yum/yum-cron.conf":
        content => epp('automatic_updates/yum-cron.conf'),
      }
      ~>
      service {'yum-cron':
        ensure => running,
        enable => true,
      }
    }
    elsif ($facts['os']['release']['major'] == '8' or $facts['os']['release']['major'] == '9' or $facts['os']['release']['major'] == '10') {
      package {'dnf-automatic':}
      ->
      service {'dnf-automatic-install.timer':
        ensure => running,
        enable => true,
      }
    }
    else {
      fail($facts['os']['release']['major'])
    }
  }
  else {
    fail($facts['os'])
  }
}