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']
27 site::aptrepo { 'debian':
29 suite => [ $::lsbdistcodename, "${::lsbdistcodename}-backports", "${::lsbdistcodename}-updates" ],
30 components => ['main','contrib','non-free']
34 if versioncmp($::lsbmajdistrelease, '8') <= 0 {
35 site::aptrepo { 'security':
36 url => [ 'http://security-cdn.debian.org/', 'http://security.debian.org/' ],
37 suite => "${::lsbdistcodename}/updates",
38 components => ['main','contrib','non-free']
41 site::aptrepo { 'security':
42 url => [ 'http://security.debian.org/' ],
43 suite => "${::lsbdistcodename}/updates",
44 components => ['main','contrib','non-free']
48 # ca-certificates is installed by the ssl module
49 if versioncmp($::lsbmajdistrelease, '9') <= 0 {
50 package { 'apt-transport-https':
54 # transitional package in buster
55 package { 'apt-transport-https':
59 $dbdosuites = [ 'debian-all', $::lsbdistcodename ]
60 site::aptrepo { 'db.debian.org':
61 url => 'https://db.debian.org/debian-admin',
64 key => 'puppet:///modules/debian_org/db.debian.org.gpg',
67 if ($::hostname in []) {
68 site::aptrepo { 'proposed-updates':
70 suite => "${::lsbdistcodename}-proposed-updates",
71 components => ['main','contrib','non-free']
74 site::aptrepo { 'proposed-updates':
79 site::aptrepo { 'debian-cdn':
82 site::aptrepo { 'debian.org':
85 site::aptrepo { 'debian2':
88 site::aptrepo { 'backports2.debian.org':
91 site::aptrepo { 'backports.debian.org':
94 site::aptrepo { 'volatile':
97 site::aptrepo { 'db.debian.org-suite':
100 site::aptrepo { 'debian-lts':
107 file { '/etc/apt/trusted-keys.d':
112 file { '/etc/apt/trusted.gpg':
117 file { '/etc/apt/preferences':
118 source => 'puppet:///modules/debian_org/apt.preferences',
120 file { '/etc/apt/apt.conf.d/local-compression':
121 source => 'puppet:///modules/debian_org/apt.conf.d/local-compression',
123 file { '/etc/apt/apt.conf.d/local-recommends':
124 source => 'puppet:///modules/debian_org/apt.conf.d/local-recommends',
126 file { '/etc/apt/apt.conf.d/local-pdiffs':
127 source => 'puppet:///modules/debian_org/apt.conf.d/local-pdiffs',
129 file { '/etc/apt/apt.conf.d/local-langs':
130 source => 'puppet:///modules/debian_org/apt.conf.d/local-langs',
132 file { '/etc/apt/apt.conf.d/local-cainfo':
133 source => 'puppet:///modules/debian_org/apt.conf.d/local-cainfo',
135 file { '/etc/apt/apt.conf.d/local-pkglist':
136 source => 'puppet:///modules/debian_org/apt.conf.d/local-pkglist',
140 command => 'dpkg-query -W -f \'${Package}\n\' > /var/lib/misc/thishost/pkglist',
141 creates => '/var/lib/misc/thishost/pkglist',
144 exec { 'apt-get update':
145 path => '/usr/bin:/usr/sbin:/bin:/sbin',
146 onlyif => '/usr/local/bin/check_for_updates',
147 require => File['/usr/local/bin/check_for_updates']
149 Exec['apt-get update']->Package<| tag == extra_repo |>