Files
zulip/puppet/zulip_ops/files/postgresql/setup_disks.sh
Alex Vandiver 0b1dd27841 puppet: AWS mounts its extra disks with inconsistent names.
It is now /dev/nvme1n1, not /dev/nvme0n1; but it always has a
consistent major/minor node.  Source the file that defines these.
2021-05-23 13:29:23 -07:00

32 lines
745 B
Bash
Executable File

#!/bin/sh
set -x
set -e
# This file only exists on the server, ignore its non-existence locally
# shellcheck disable=SC1091
. "/sys/dev/block/259:0/uevent"
LOCALDISK="/dev/$DEVNAME"
if ! grep -q "$LOCALDISK" /etc/fstab; then
echo "$LOCALDISK /srv xfs nofail,noatime 1 1" >>/etc/fstab
fi
if ! mountpoint -q /srv; then
mkfs.xfs "$LOCALDISK"
mount /srv
fi
if [ ! -L /var/lib/postgresql ]; then
service postgresql stop
if [ -e /var/lib/postgresql ]; then
mv /var/lib/postgresql "/root/postgresql-data-$(date +'%m-%d-%Y-%T')"
fi
ln -s /srv/postgresql/ /var/lib
fi
if [ ! -e "/srv/postgresql" ]; then
service postgresql stop
mkdir "/srv/postgresql"
chown postgres:postgres /srv/postgresql
fi