3 # Stuff common to all debian.org servers
5 class debian_org::apt {
6 if versioncmp($::lsbmajdistrelease, '8') <= 0 {
7 $fallbackmirror = 'http://cdn-fastly.deb.debian.org/debian/'
9 $fallbackmirror = 'http://deb.debian.org/debian/'
12 if getfromhash($site::nodeinfo, 'hoster', 'mirror-debian') {
13 $mirror = [ getfromhash($site::nodeinfo, 'hoster', 'mirror-debian'), $fallbackmirror ]
15 $mirror = [ $fallbackmirror ]
19 if versioncmp($::lsbmajdistrelease, '8') <= 0 {
20 site::aptrepo { 'debian':
22 suite => [ $::lsbdistcodename ],
23 components => ['main','contrib','non-free']
26 } elsif versioncmp($::lsbmajdistrelease, '9') <= 0 {
27 site::aptrepo { 'debian':
29 suite => [ $::lsbdistcodename, "${::lsbdistcodename}-backports", "${::lsbdistcodename}-updates" ],
30 components => ['main','contrib','non-free']
34 site::aptrepo { 'debian':
36 suite => [ $::lsbdistcodename, "${::lsbdistcodename}-updates" ],
37 components => ['main','contrib','non-free']
41 if versioncmp($::lsbmajdistrelease, '8') <= 0 {
42 site::aptrepo { 'security':
43 url => [ 'http://security-cdn.debian.org/', 'http://security.debian.org/' ],
44 suite => "${::lsbdistcodename}/updates",
45 components => ['main','contrib','non-free']
48 site::aptrepo { 'security':
49 url => [ 'http://security.debian.org/' ],
50 suite => "${::lsbdistcodename}/updates",
51 components => ['main','contrib','non-free']
55 # ca-certificates is installed by the ssl module
56 if versioncmp($::lsbmajdistrelease, '9') <= 0 {
57 package { 'apt-transport-https':
61 # transitional package in buster
62 package { 'apt-transport-https':
66 $dbdosuites = [ 'debian-all', $::lsbdistcodename ]
67 site::aptrepo { 'db.debian.org':
68 url => 'https://db.debian.org/debian-admin',
71 key => 'puppet:///modules/debian_org/db.debian.org.gpg',
74 if ($::hostname in []) {
75 site::aptrepo { 'proposed-updates':
77 suite => "${::lsbdistcodename}-proposed-updates",
78 components => ['main','contrib','non-free']
81 site::aptrepo { 'proposed-updates':
86 site::aptrepo { 'debian-cdn':
89 site::aptrepo { 'debian.org':
92 site::aptrepo { 'debian2':
95 site::aptrepo { 'backports2.debian.org':
98 site::aptrepo { 'backports.debian.org':
101 site::aptrepo { 'volatile':
104 site::aptrepo { 'db.debian.org-suite':
107 site::aptrepo { 'debian-lts':
114 file { '/etc/apt/trusted-keys.d':
119 file { '/etc/apt/trusted.gpg':
124 file { '/etc/apt/preferences':
125 source => 'puppet:///modules/debian_org/apt.preferences',
127 file { '/etc/apt/apt.conf.d/local-compression':
128 source => 'puppet:///modules/debian_org/apt.conf.d/local-compression',
130 file { '/etc/apt/apt.conf.d/local-recommends':
131 source => 'puppet:///modules/debian_org/apt.conf.d/local-recommends',
133 file { '/etc/apt/apt.conf.d/local-pdiffs':
134 source => 'puppet:///modules/debian_org/apt.conf.d/local-pdiffs',
136 file { '/etc/apt/apt.conf.d/local-langs':
137 source => 'puppet:///modules/debian_org/apt.conf.d/local-langs',
139 file { '/etc/apt/apt.conf.d/local-cainfo':
140 source => 'puppet:///modules/debian_org/apt.conf.d/local-cainfo',
143 exec { 'apt-get update':
144 path => '/usr/bin:/usr/sbin:/bin:/sbin',
145 onlyif => '/usr/local/bin/check_for_updates',
146 require => File['/usr/local/bin/check_for_updates']
148 Exec['apt-get update']->Package<| tag == extra_repo |>