X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;ds=sidebyside;f=modules%2Froles%2Fmanifests%2Fstatic_master.pp;h=6a36ed3fc5e13b62a4514bbd56ed72228ef09b34;hb=168aa3f05f914802698b8db5fdde823c4e992913;hp=cabec645b76b4b0fbb0ac25ba54ad9e8650b894c;hpb=04b5e988827426548ea98b4321392704462c0064;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/static_master.pp b/modules/roles/manifests/static_master.pp index cabec645b..6a36ed3fc 100644 --- a/modules/roles/manifests/static_master.pp +++ b/modules/roles/manifests/static_master.pp @@ -1,40 +1,38 @@ +# static master +# +# each component defines exactly one static master. Content is copied from the source host +# to the master, and from there to all the mirrors. +# class roles::static_master { - include roles::static_base - include roles::static_srvdir + include roles::static::base + include roles::static::srvdir - file { '/usr/local/bin/static-master-run': - source => 'puppet:///modules/roles/static-mirroring/static-master-run', - mode => '0555', - } - file { '/usr/local/bin/static-master-update-component': - source => 'puppet:///modules/roles/static-mirroring/static-master-update-component', - mode => '0555', - } - file { '/etc/static-clients.conf': - content => template('roles/static-mirroring/static-clients.conf.erb'), - } + # masters need to talk to mirrors and sources and themselves + class { 'roles::static::ssh': + add_tag => [ 'staticsync-mirror', 'staticsync-source', 'staticsync-master' ], + collect_tag => 'staticsync-master', + } - file { "/home/staticsync/static-master": - ensure => link, - target => '/srv/static.debian.org', - } + file { '/usr/local/bin/static-master-run': + source => 'puppet:///modules/roles/static-mirroring/static-master-run', + mode => '0555', + } + file { '/usr/local/bin/static-master-update-component': + source => 'puppet:///modules/roles/static-mirroring/static-master-update-component', + mode => '0555', + } + file { '/etc/static-clients.conf': + content => template('roles/static-mirroring/static-clients.conf.erb'), + } - # export some information for the onion.debian.org build - if $::hostname in [dillon] { - file { '/srv/puppet.debian.org': - ensure => directory - } - file { '/srv/puppet.debian.org/puppet-facts': - ensure => directory - } - concat { '/srv/puppet.debian.org/puppet-facts/onionbalance-services.yaml': - notify => Exec["rebuild-onion-website"], - } - Concat::Fragment <<| tag == "onionbalance-services.yaml" |>> - - exec { 'rebuild-onion-website': - command => '/bin/su - staticsync -c \'make -C /srv/onion-master.debian.org\'', - refreshonly => true, - } - } + file { '/home/staticsync/static-master': + ensure => link, + target => '/srv/static.debian.org', + } + file { '/srv/static.debian.org/master': + ensure => directory, + mode => '0755', + owner => 'staticsync', + group => 'staticsync', + } }