X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fbuildd%2Fmanifests%2Finit.pp;h=1d9aa20651b2eae035a0faa55b10c6bdce501d87;hb=944a6873425c59bc8ac5c0154221fc910b3fdc71;hp=5cf7fb27adc4c4af4783db1a111b8aefc11deac4;hpb=e2768b13344b149e62d256f7efbcee923e4e6e3d;p=mirror%2Fdsa-puppet.git diff --git a/modules/buildd/manifests/init.pp b/modules/buildd/manifests/init.pp index 5cf7fb27a..1d9aa2065 100644 --- a/modules/buildd/manifests/init.pp +++ b/modules/buildd/manifests/init.pp @@ -75,7 +75,9 @@ class buildd ($ensure=present) { file { '/etc/apt/preferences.d/buildd': ensure => absent, } - file { '/etc/cron.d/dsa-buildd': + file { '/etc/cron.d/dsa-buildd': ensure => absent, } + concat::fragment { 'dsa-puppet-stuff--buildd': + target => '/etc/cron.d/dsa-puppet-stuff', source => 'puppet:///modules/buildd/cron.d-dsa-buildd', require => Package['debian.org'] } @@ -94,8 +96,12 @@ class buildd ($ensure=present) { mode => '0555', } } - file { '/etc/cron.d/puppet-buildd-aptitude': - content => "*/5 * * * * root /usr/local/sbin/buildd-schroot-aptitude-kill\n", + file { '/etc/cron.d/puppet-buildd-aptitude': ensure => absent } + concat::fragment { 'dsa-puppet-stuff--buildd-aptitude-killer': + target => '/etc/cron.d/dsa-puppet-stuff', + content => @(EOF) + */5 * * * * root /usr/local/sbin/buildd-schroot-aptitude-kill + | EOF } service { 'buildd': @@ -103,9 +109,13 @@ class buildd ($ensure=present) { ensure => 'stopped', } + file { '/etc/cron.d/puppet-update-buildd-schroots': ensure => absent } if $has_srv_buildd { - file { '/etc/cron.d/puppet-update-buildd-schroots': - content => "13 22 * * 0,3 root PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin setup-all-dchroots buildd\n", + concat::fragment { 'dsa-puppet-stuff--buildd-update-schroots': + target => '/etc/cron.d/dsa-puppet-stuff', + content => @(EOF) + 13 22 * * 0,3 root PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin setup-all-dchroots buildd + | EOF } } @@ -174,6 +184,15 @@ class buildd ($ensure=present) { owner => buildd, } + file { '/home/buildd/.profile': + content => @(EOT), + export XDG_RUNTIME_DIR="/run/user/$(id -u)" + export DBUS_SESSION_BUS_ADDRESS="unix:path=${XDG_RUNTIME_DIR}/bus" + | EOT + group => buildd, + owner => buildd, + } + if ! $::buildd_key { exec { 'create-buildd-key': command => '/bin/su - buildd -c \'mkdir -p -m 02700 .ssh && ssh-keygen -C "`whoami`@`hostname` (`date +%Y-%m-%d`)" -P "" -f .ssh/id_rsa -q\'', @@ -186,5 +205,22 @@ class buildd ($ensure=present) { command => 'adduser buildd sbuild', onlyif => "getent group sbuild > /dev/null && ! getent group sbuild | grep '\\' > /dev/null" } + + # Enable lingering for pybuildd + file { '/var/lib/systemd/linger': + ensure => directory, + mode => '755', + } + file { "/var/lib/systemd/linger/buildd": + ensure => present, + } + + # And persistent journald storage + exec {'mkdir -p /etc/systemd/journald.conf.d': + unless => 'test -d /etc/systemd/journald.conf.d', + } + file { '/etc/systemd/journald.conf.d/persistency.conf': + source => 'puppet:///modules/systemd/persistency.conf', + } } }