]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/debian-org/manifests/init.pp
syntax fix
[dsa-puppet.git] / modules / debian-org / manifests / init.pp
index 3d2fd217cbeb9b7c06953e482ab9439299c7a5c9..f68ae30b7982817ffe185408c64c2a5c55717ce5 100644 (file)
@@ -1,4 +1,14 @@
 class debian-org {
+       if getfromhash($site::nodeinfo, 'hoster', 'mirror-debian') {
+               $mirror = getfromhash($site::nodeinfo, 'hoster', 'mirror-debian')
+       } else {
+               $mirror = 'http://http.debian.net/debian/'
+       }
+       if $::lsbmajdistrelease < 7 {
+               $mirror_backports = 'http://backports.debian.org/debian-backports/'
+       } else {
+               $mirror_backports = $mirror
+       }
 
        $debianadmin = [
                'debian-archive-debian-samhain-reports@master.debian.org',
@@ -20,11 +30,9 @@ class debian-org {
                        'dsa-munin-plugins',
                ]:
                ensure => installed,
-               require => [
-                       File['/etc/apt/sources.list.d/db.debian.org.list'],
-                       Exec['apt-get update']
-               ]
+               tag    => extra_repo,
        }
+
        package { [
                        'apt-utils',
                        'bash-completion',
@@ -39,6 +47,12 @@ class debian-org {
                ensure => installed,
        }
 
+       if $::lsbmajdistrelease >= 7 {
+               package { 'libfilesystem-ruby1.9.1':
+                       ensure => installed,
+               }
+       }
+
        munin::check { [
                        'cpu',
                        'entropy',
@@ -62,14 +76,10 @@ class debian-org {
        if getfromhash($site::nodeinfo, 'broken-rtc') {
                package { 'fake-hwclock':
                        ensure => installed,
-                       require => [
-                               File['/etc/apt/sources.list.d/db.debian.org.list'],
-                               Exec['apt-get update']
-                       ]
+                       tag    => extra_repo,
                }
        }
 
-
        package { 'molly-guard':
                ensure => installed,
        }
@@ -84,26 +94,16 @@ class debian-org {
                require => Package['molly-guard'],
        }
 
-       # This really means 'not wheezy'
-
-       if $::debarchitecture != 'armhf' {
-               site::aptrepo { 'security':
-                       url        => 'http://security.debian.org/',
-                       suite      => "${::lsbdistcodename}/updates",
-                       components => ['main','contrib','non-free']
-               }
-
-               site::aptrepo { 'backports.debian.org':
-                       url        => 'http://backports.debian.org/debian-backports/',
-                       suite      => "${::lsbdistcodename}-backports",
-                       components => ['main','contrib','non-free']
-               }
+       site::aptrepo { 'security':
+               url        => 'http://security.debian.org/',
+               suite      => "${::lsbdistcodename}/updates",
+               components => ['main','contrib','non-free']
+       }
 
-               site::aptrepo { 'volatile':
-                       url        => 'http://ftp.debian.org/debian',
-                       suite      => "${::lsbdistcodename}-updates",
-                       components => ['main','contrib','non-free']
-               }
+       site::aptrepo { 'backports.debian.org':
+               url        => $mirror_backports,
+               suite      => "${::lsbdistcodename}-backports",
+               components => ['main','contrib','non-free']
        }
        site::aptrepo { 'backports.org':
                ensure => absent,
@@ -111,6 +111,12 @@ class debian-org {
                key => 'puppet:///modules/debian-org/backports.org.asc',
        }
 
+       site::aptrepo { 'volatile':
+               url        => $mirror,
+               suite      => "${::lsbdistcodename}-updates",
+               components => ['main','contrib','non-free']
+       }
+
        site::aptrepo { 'debian.org':
                ensure => absent,
        }
@@ -122,6 +128,14 @@ class debian-org {
                key        => 'puppet:///modules/debian-org/db.debian.org.asc',
        }
 
+       if getfromhash($site::nodeinfo, 'hoster', 'mirror-debian') {
+               site::aptrepo { 'debian':
+                       url        => getfromhash($site::nodeinfo, 'hoster', 'mirror-debian'),
+                       suite      => $::lsbdistcodename,
+                       components => ['main','contrib','non-free']
+               }
+       }
+
        file { '/etc/facter':
                ensure  => directory,
                purge   => true,
@@ -155,8 +169,12 @@ class debian-org {
                source => 'puppet:///modules/debian-org/timezone',
                notify => Exec['dpkg-reconfigure tzdata -pcritical -fnoninteractive'],
        }
+       if $::hostname == handel {
+               include puppetmaster::db
+               $dbpassword = $puppetmaster::db::password
+       }
        file { '/etc/puppet/puppet.conf':
-               source => 'puppet:///modules/debian-org/puppet.conf',
+               content => template('debian-org/puppet.conf.erb'),
        }
        file { '/etc/default/puppet':
                source => 'puppet:///modules/debian-org/puppet.default',
@@ -213,6 +231,7 @@ class debian-org {
                path        => '/usr/bin:/usr/sbin:/bin:/sbin',
                refreshonly => true,
        }
+       Exec['apt-get update']->Package<| tag == extra_repo |>
 
        exec { 'dpkg-reconfigure tzdata -pcritical -fnoninteractive':
                path        => '/usr/bin:/usr/sbin:/bin:/sbin',