X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;ds=sidebyside;f=modules%2Fbuildd%2Fmanifests%2Finit.pp;h=ec575bf8470b7b51d91e5a37f4ce1834903827a8;hb=ca002f1352e43f4ebb2c120342cdaf6ef7d65ef4;hp=4ded440f79d2dc5214722c51c4d6a354d777c99d;hpb=d2f41d6cc64287591ac5c97a1fae9adb4f848d36;p=mirror%2Fdsa-puppet.git diff --git a/modules/buildd/manifests/init.pp b/modules/buildd/manifests/init.pp index 4ded440f7..ec575bf84 100644 --- a/modules/buildd/manifests/init.pp +++ b/modules/buildd/manifests/init.pp @@ -1,27 +1,31 @@ -class buildd { +class buildd ($ensure=present) { - package { [ - 'schroot', - 'sbuild' - ]: - ensure => installed, - require => [ - Exec['apt-get update'] - ] - } + include schroot - package { 'apt-transport-https': + package { 'sbuild': ensure => installed, + tag => extra_repo, } - package { [ - 'debootstrap', - 'dupload' - ]: + package { 'libsbuild-perl': ensure => installed, + tag => extra_repo, + before => Package['sbuild'] } - site::linux_module { 'dm_snapshot': } - ferm::module { 'nf_conntrack_ftp': } + package { 'apt-transport-https': + ensure => installed, + } + if $ensure == present { + package { 'dupload': + ensure => installed, + } + file { '/etc/dupload.conf': + source => 'puppet:///modules/buildd/dupload.conf', + require => Package['dupload'], + } + site::linux_module { 'dm_snapshot': } + ferm::module { 'nf_conntrack_ftp': } + } site::aptrepo { 'buildd': ensure => absent, @@ -34,15 +38,12 @@ class buildd { default => 'wheezy' } - if $suite == 'squeeze' { - site::aptrepo { 'buildd.debian.org': - key => 'puppet:///modules/buildd/buildd.debian.org.asc', - url => 'https://buildd.debian.org/apt/', - suite => $suite, - components => 'main', - require => Package['apt-transport-https'], - before => Package[schroot,sbuild] - } + site::aptrepo { 'buildd.debian.org': + 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] { @@ -69,23 +70,28 @@ class buildd { } file { '/etc/apt/preferences.d/buildd': 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'), - require => Package['sbuild'], + before => Site::Aptrepo['buildd.debian.org'] } file { '/etc/cron.d/dsa-buildd': source => 'puppet:///modules/buildd/cron.d-dsa-buildd', require => Package['debian.org'] } - file { '/etc/dupload.conf': - source => 'puppet:///modules/buildd/dupload.conf', - require => Package['dupload'], + + if $::lsbmajdistrelease >= 7 { + package { 'python-psutil': + ensure => installed, + } + file { '/usr/local/sbin/buildd-schroot-aptitude-kill': + source => 'puppet:///modules/buildd/buildd-schroot-aptitude-kill', + mode => '0555', + } + } else { + file { '/usr/local/sbin/buildd-schroot-aptitude-kill': + source => 'puppet:///modules/buildd/buildd-schroot-aptitude-kill.squeeze', + mode => '0555', + } } - file { '/etc/default/schroot': - source => 'puppet:///modules/buildd/default-schroot', - require => Package['schroot'] + file { '/etc/cron.d/puppet-buildd-aptitude': + content => "*/5 * * * * root /usr/local/sbin/buildd-schroot-aptitude-kill\n", } - }