X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;ds=sidebyside;f=modules%2Fbuildd%2Fmanifests%2Finit.pp;h=335da3f012bbbf9936923da858e6a844326ec9cf;hb=c5c3b36a0c3421802e8a62aae76a2604a29d1dd1;hp=364267a716a6d4184625288774998f317f175e9d;hpb=fa4000517ba3ff1344bb0b9fdc186708d740bc4a;p=mirror%2Fdsa-puppet.git diff --git a/modules/buildd/manifests/init.pp b/modules/buildd/manifests/init.pp index 364267a71..335da3f01 100644 --- a/modules/buildd/manifests/init.pp +++ b/modules/buildd/manifests/init.pp @@ -1,33 +1,73 @@ class buildd { - # sigh, sort this mess out, kids - if $::lsbdistcodename in [lenny,squeeze] { - package { 'schroot': ensure => installed } - } else { - package { 'schroot': ensure => held } + package { [ + 'schroot', + 'sbuild' + ]: + ensure => installed, + require => [ + File['/etc/apt/sources.list.d/buildd.debian.org.list'], + Exec['apt-get update'] + ] } + package { 'apt-transport-https': + ensure => installed, + } package { [ - 'sbuild', - 'apt-transport-https', 'debootstrap', 'dupload' ]: - ensure => installed + ensure => installed, } site::linux_module { 'dm_snapshot': } + ferm::module { 'nf_conntrack_ftp': } site::aptrepo { 'buildd': ensure => absent, } + + $suite = $::lsbdistcodename ? { + squeeze => $::lsbdistcodename, + wheezy => $::lsbdistcodename, + undef => 'squeeze', + default => 'wheezy' + } + site::aptrepo { 'buildd.debian.org': - template => 'buildd/etc/apt/sources.list.d/buildd.list.erb', - key => 'puppet:///modules/buildd/buildd.debian.org.asc', + key => 'puppet:///modules/buildd/buildd.debian.org.asc', + url => 'https://buildd.debian.org/apt/', + suite => $suite, + components => 'main', + require => Package['apt-transport-https'], } + if $::hostname in [alkman,porpora,zandonai] { + site::aptrepo { 'buildd.debian.org-proposed': + url => 'https://buildd.debian.org/apt/', + suite => "${suite}-proposed", + components => 'main', + require => Package['apt-transport-https'], + } + } + + if $::hostname in [krenek] { + site::aptrepo { 'buildd.debian.org-experimental': + url => 'https://buildd.debian.org/apt/', + suite => "${suite}-experimental", + components => 'main', + require => Package['apt-transport-https'], + } + } + + # 'bad' extension + file { '/etc/apt/preferences.d/buildd.debian.org': + ensure => absent, + } file { '/etc/apt/preferences.d/buildd': - ensure => absent + content => template('buildd/etc/apt/preferences.d/buildd'), + before => File['/etc/apt/sources.list.d/buildd.debian.org.list'] } file { '/etc/schroot/mount-defaults': content => template('buildd/etc/schroot/mount-defaults.erb'),