X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=modules%2Fbuildd%2Fmanifests%2Finit.pp;h=220c9a8b5d0d349eb021b419f5e7e38740883930;hb=687e6b3a071bfef37574492e3931ce4766837714;hp=be0580ae2e8d12a2f8ec6f54befc5c2fc6cdd582;hpb=98b47daeeb939b888393780772cafcd4ab4e1787;p=dsa-puppet.git diff --git a/modules/buildd/manifests/init.pp b/modules/buildd/manifests/init.pp index be0580ae..220c9a8b 100644 --- a/modules/buildd/manifests/init.pp +++ b/modules/buildd/manifests/init.pp @@ -1,40 +1,96 @@ -class debian-org { - package { "sbuild": ensure => latest; -# is there a way to wait until the version from buildd.d.o is available? - } - file { - "/etc/apt/sources.list.d/buildd.list": - owner => root, - group => root, - mode => 444, - ensure => file, - source => "puppet:///files/etc/apt/sources.list.d/buildd.list"; - require => Package["apt-transport-https"], - } -# THIS IS NOT READY YET -# also needs: -# apt key on the system: -# -----BEGIN PGP PUBLIC KEY BLOCK----- -# Version: GnuPG v1.4.9 (GNU/Linux) -# -# mQENBEm1IOQBCAC2D/Q3tcB+/zRx8/O4ry4hvP3JTLB+zCXcyAcIyzPdgmxNXQUZ -# IOPSIMluiJfh9Dbgwjxm9oWTkP2LobcfVzIlHA9nVonW42rhhaYJd7yQ8xQ6u15g -# 7SPNO8b8yinqm+140Sh32PZj/5YGdFf1YpJ82la8PmNFkpLQlP+Kv2hzusun1/fQ -# Ui8g81gHq+vO5XTKW06yMk87a4SHeSFEtxjIpivAx9iIpQCF8RmPs7+EbGpG1xpn -# pjD8QMzmls8yPFl/0+xh+tvIZoGogIJHDo3I1vDEUuEMqoISnBB+BjWRrcJylQW0 -# mbNyiv2AJmNEZLZG3+0KdT9txs7ZKQfsSU6VABEBAAG0J2J1aWxkZC5kZWJpYW4u -# b3JnIGFyY2hpdmUga2V5IDIwMDkvMjAxMIkBPAQTAQIAJgUCSbUg5AIbAwUJA8Jn -# AAYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEHxDG3/7kJSE/4gIAJXwWs1IaOVf -# qkQpx+ijdyLqoZWpOYeX3Vo9FF2Lk/3+tBol8QFoQoSvrQWg+aP+SXlL1PzpEOvs -# 87uqRzPvwK7B7eHlzY0mGpshXEGniHNVK4ZBh3svrVN3LwqV6lgHkNWZkBczDfvi -# E8du/UXOL7lCADqjZCPRuwGPwkWp32MbZzwRHP0pRyXttRXTDUQXwM6TUhGaHxsB -# A4K5AUsooz4PCpIiUwVmle7kGz+NrI+bbyFNJBGnSxwluxGsJayX9kaqbq9JDhsM -# i+nhFOCOXomKSbJAaoQZnpGY4fFhk14UdM7EQ9CsEpvBu2CeZu2CibmDR8hPuGMV -# duy/LOSZsT0= -# =680o -# -----END PGP PUBLIC KEY BLOCK----- -# +class buildd ($ensure=present) { + include schroot + package { 'sbuild': + ensure => installed, + tag => extra_repo, + } + package { 'libsbuild-perl': + ensure => installed, + tag => extra_repo, + before => Package['sbuild'] + } + 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': } + include ferm::ftp_conntrack + } + + site::aptrepo { 'buildd': + ensure => absent, + } + + $suite = $::lsbdistcodename ? { + squeeze => $::lsbdistcodename, + wheezy => $::lsbdistcodename, + undef => 'squeeze', + default => 'wheezy' + } + + site::aptrepo { 'buildd.debian.org': + key => 'puppet:///modules/buildd/buildd.debian.org.gpg', + url => 'https://buildd.debian.org/apt/', + suite => $suite, + components => 'main', + require => Package['apt-transport-https'], + } + + $buildd_prop_ensure = $::hostname ? { + /^(alkman|barber|brahms|porpora|zandonai)$/ => 'present', + default => 'absent', + } + + file { '/etc/apt/apt.conf.d/puppet-https-buildd': + content => "Acquire::https::buildd.debian.org::CaInfo \"/etc/ssl/servicecerts/buildd.debian.org.crt\";\n", + #require => File['/etc/ssl/certs/buildd.debian.org.crt'] + } + site::aptrepo { 'buildd.debian.org-proposed': + ensure => $buildd_prop_ensure, + url => 'https://buildd.debian.org/apt/', + suite => "${suite}-proposed", + components => 'main', + require => [ Package['apt-transport-https'], + File['/etc/apt/apt.conf.d/puppet-https-buildd'] ], + } + + # 'bad' extension + file { '/etc/apt/preferences.d/buildd.debian.org': + ensure => absent, + } + file { '/etc/apt/preferences.d/buildd': + ensure => absent, + } + file { '/etc/cron.d/dsa-buildd': + source => 'puppet:///modules/buildd/cron.d-dsa-buildd', + require => Package['debian.org'] + } + + if ($::lsbmajdistrelease >= 7 and $::kernel == 'Linux') { + 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/cron.d/puppet-buildd-aptitude': + content => "*/5 * * * * root /usr/local/sbin/buildd-schroot-aptitude-kill\n", + } }