zulip/puppet/zulip_ops/manifests/zmirror_personals.pp

62 lines
1.9 KiB
Puppet

class zulip_ops::zmirror_personals {
include zulip_ops::base
include zulip::supervisor
$zmirror_packages = [# Packages needed to run the mirror
'libzephyr4-krb5',
'zephyr-clients',
'krb5-config',
'krb5-user',
'debathena-kerberos-config',
'debathena-zephyr-config',
# Packages needed to build pyzephyr
'libzephyr-dev',
'comerr-dev',
'python3-dev',
'python-dev',
'cython3',
'cython',
]
package { $zmirror_packages: ensure => 'installed' }
apt::source {'debathena':
location => 'http://debathena.mit.edu/apt',
release => 'xenial',
repos => 'debathena debathena-config',
key => 'D1CD49BDD30B677273A75C66E4EE62700D8A9E8F',
key_source => 'https://debathena.mit.edu/apt/debathena-archive.asc',
include_src => true,
}
file { ['/home/zulip/api-keys', '/home/zulip/zephyr_sessions', '/home/zulip/ccache',
'/home/zulip/mirror_status']:
ensure => directory,
mode => '0644',
owner => 'zulip',
group => 'zulip',
}
file { '/etc/cron.d/test_zephyr_personal_mirrors':
ensure => file,
owner => 'root',
group => 'root',
mode => '0644',
source => 'puppet:///modules/zulip_ops/cron.d/test_zephyr_personal_mirrors',
}
file { '/usr/lib/nagios/plugins/zulip_zephyr_mirror':
require => Package[nagios-plugins-basic],
recurse => true,
purge => true,
owner => 'root',
group => 'root',
mode => '0755',
source => 'puppet:///modules/zulip_ops/nagios_plugins/zulip_zephyr_mirror',
}
# TODO: Do the rest of our setup, which includes at least:
# Building patched libzephyr4-krb5 from davidben's roost branch and installing that
# (to add ZLoadSession/ZDumpSession).
# Building python-zephyr after cloning it from https://github.com/ebroder/python-zephyr
# (patched with tabbott's branch to add dump_session and load_session using the above)
}