]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/buildd/manifests/init.pp
*sigh*
[dsa-puppet.git] / modules / buildd / manifests / init.pp
1 class buildd {
2
3         # sigh, sort this mess out, kids
4         if $::lsbdistcodename in [lenny,squeeze] {
5                 package { 'schroot':
6                         ensure => installed,
7                         require => [
8                                 File['/etc/apt/sources.list.d/db.debian.org.list'],
9                                 Exec['apt-get update']
10                         ]
11                 }
12         } else {
13                 package { 'schroot': ensure => held }
14         }
15
16         package { 'apt-transport-https':
17                 ensure => installed,
18         }
19         package { [
20                         'sbuild',
21                         'debootstrap',
22                         'dupload'
23                 ]:
24                 ensure => installed,
25                 require => [
26                         File['/etc/apt/sources.list.d/db.debian.org.list'],
27                         Exec['apt-get update']
28                 ]
29         }
30
31         site::linux_module { 'dm_snapshot': }
32         ferm::module { 'nf_conntrack_ftp': }
33
34         site::aptrepo { 'buildd':
35                 ensure => absent,
36         }
37         site::aptrepo { 'buildd.debian.org':
38                 template => 'buildd/etc/apt/sources.list.d/buildd.list.erb',
39                 key      => 'puppet:///modules/buildd/buildd.debian.org.asc',
40                 require  => Package['apt-transport-https'],
41         }
42
43         # "bad" extension
44         file { '/etc/apt/preferences.d/buildd.debian.org':
45                 ensure => absent,
46         }
47         file { '/etc/apt/preferences.d/buildd.debian.org':
48                 content => template('buildd/etc/apt/preferences.d/buildd'),
49                 before  => File["/etc/apt/sources.list.d/buildd.debian.org.list"],
50                 ;
51         }
52         file { '/etc/schroot/mount-defaults':
53                 content => template('buildd/etc/schroot/mount-defaults.erb'),
54                 require => Package['sbuild'],
55         }
56         file { '/etc/cron.d/dsa-buildd':
57                 source  => 'puppet:///modules/buildd/cron.d-dsa-buildd',
58                 require => Package['debian.org']
59         }
60         file { '/etc/dupload.conf':
61                 source  => 'puppet:///modules/buildd/dupload.conf',
62                 require => Package['dupload'],
63         }
64         file { '/etc/default/schroot':
65                 source  => 'puppet:///modules/buildd/default-schroot',
66                 require => Package['schroot']
67         }
68
69 }