# == Class: openstack_project::mirror_update # class openstack_project::mirror_update ( $sysadmins = [], $bandersnatch_keytab = '', $admin_keytab = '', ) { class { 'openstack_project::server': sysadmins => $sysadmins, afs => true, } class { 'bandersnatch': bandersnatch_source => 'https://bitbucket.org/jeblair/bandersnatch', } class { 'bandersnatch::mirror': mirror_root => '/afs/.openstack.org/mirror/pypi', static_root => '/afs/.openstack.org/mirror', hash_index => true, require => Class['bandersnatch'], } file { '/etc/bandersnatch.keytab': owner => 'root', group => 'root', mode => '0400', content => $bandersnatch_keytab, } file { '/etc/afsadmin.keytab': owner => 'root', group => 'root', mode => '0400', content => $admin_keytab, } file { '/usr/local/bin/bandersnatch-mirror-update': ensure => present, owner => 'root', group => 'root', mode => '0755', source => 'puppet:///modules/openstack_project/bandersnatch-mirror-update.sh', } cron { 'bandersnatch': user => $user, minute => '*/5', command => 'flock -n /var/run/bandersnatch/mirror.lock bandersnatch-mirror-update >>/var/log/bandersnatch/mirror.log 2>&1', environment => 'PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', require => [ File['/usr/local/bin/bandersnatch-mirror-update'], File['/etc/afsadmin.keytab'], File['/etc/bandersnatch.keytab'], Class['bandersnatch::mirror'] ] } }