mirror of https://github.com/zulip/zulip.git
40 lines
1.4 KiB
Puppet
40 lines
1.4 KiB
Puppet
class zulip_ops::postgres_master {
|
|
include zulip_ops::base
|
|
include zulip_ops::postgres_appdb
|
|
|
|
$master_packages = [# Packages needed for disk + RAID configuration
|
|
"xfsprogs",
|
|
"mdadm",
|
|
]
|
|
package { $master_packages: ensure => "installed" }
|
|
|
|
file { '/etc/sysctl.d/40-postgresql.conf':
|
|
ensure => file,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => 644,
|
|
source => 'puppet:///modules/zulip_ops/postgresql/40-postgresql.conf.master',
|
|
}
|
|
|
|
file { "/root/setup_disks.sh":
|
|
ensure => file,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => 744,
|
|
source => 'puppet:///modules/zulip_ops/postgresql/setup_disks.sh',
|
|
}
|
|
|
|
exec { "setup_disks":
|
|
command => "/root/setup_disks.sh",
|
|
require => Package["postgresql-${zulip::base::postgres_version}", "xfsprogs", "mdadm"],
|
|
creates => "/dev/md0"
|
|
}
|
|
|
|
# This one will probably fail most of the time
|
|
exec {"give_nagios_user_access":
|
|
command => "su postgres -c -- bash -c 'psql -v ON_ERROR_STOP=1 zulip < /usr/share/postgresql/${zulip::base::postgres_version}/zulip_nagios_setup.sql' && touch /usr/share/postgresql/${zulip::base::postgres_version}/zulip_nagios_setup.sql.applied",
|
|
creates => "/usr/share/postgresql/${zulip::base::postgres_version}/zulip_nagios_setup.sql.applied",
|
|
require => Package["postgresql-${zulip::base::postgres_version}"],
|
|
}
|
|
}
|