X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fbuildd%2Fmanifests%2Finit.pp;h=ea73380294107b69bca5cd86e3dc648ba3371e5f;hb=f79fdb6bb13b6eb8a0c8b0dcf117a2c3e0e241c6;hp=307419a7db402727353581b65412b2901375bfce;hpb=bbd37ffbc4fc831056704251826f0fa8b0822db3;p=mirror%2Fdsa-puppet.git diff --git a/modules/buildd/manifests/init.pp b/modules/buildd/manifests/init.pp index 307419a7d..ea7338029 100644 --- a/modules/buildd/manifests/init.pp +++ b/modules/buildd/manifests/init.pp @@ -1,107 +1,25 @@ -class buildd ($ensure=present) { - - $package_ensure = $ensure ? { - present => installed, - absent => $ensure - } - - package { 'schroot': - ensure => $package_ensure, - tag => extra_repo, - } - package { 'sbuild': - ensure => $package_ensure, - tag => extra_repo, - } - package { 'libsbuild-perl': - ensure => $package_ensure, - tag => extra_repo, - before => Package['sbuild'] - } - - package { 'apt-transport-https': - ensure => $package_ensure, - } - if $ensure == present { - package { [ - 'debootstrap', - 'dupload' - ]: - ensure => installed, - } - file { '/etc/dupload.conf': - ensure => $ensure, - source => 'puppet:///modules/buildd/dupload.conf', - require => Package['dupload'], - } - site::linux_module { 'dm_snapshot': - ensure => $ensure - } - ferm::module { 'nf_conntrack_ftp': - ensure => $ensure - } - } - - site::aptrepo { 'buildd': - ensure => absent, - } - - $suite = $::lsbdistcodename ? { - squeeze => $::lsbdistcodename, - wheezy => $::lsbdistcodename, - undef => 'squeeze', - default => 'wheezy' - } - - site::aptrepo { 'buildd.debian.org': - ensure => $ensure, - 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 => $ensure, - content => template('buildd/etc/apt/preferences.d/buildd'), - before => Site::Aptrepo['buildd.debian.org'] - } - file { '/etc/schroot/mount-defaults': - ensure => $ensure, - content => template('buildd/etc/schroot/mount-defaults.erb'), - require => Package['sbuild'], - } - file { '/etc/cron.d/dsa-buildd': - ensure => $ensure, - source => 'puppet:///modules/buildd/cron.d-dsa-buildd', - require => Package['debian.org'] - } - file { '/etc/default/schroot': - ensure => $ensure, - source => 'puppet:///modules/buildd/default-schroot', - require => Package['schroot'] - } +# A debian.org buildd +class buildd { + # Do nothing until we get the buildd user from ldap + if $::buildd_user_exists { + # home directory + file { '/home/buildd': + ensure => directory, + mode => '2755', + group => buildd, + owner => buildd, + } + + include buildd::schroot + include buildd::dupload + include buildd::aptitude + include buildd::gnupg + include buildd::ssh + + if $::hostname in [x86-grnet-01,x86-grnet-02,zani] { + include buildd::pybuildd + } else { + include buildd::buildd + } + } }