PREIN
/bin/sh
getent group dpmmgr > /dev/null || groupadd -r dpmmgr
getent passwd dpmmgr > /dev/null || useradd -r -g dpmmgr \
-d /var/lib/dpm -s /bin/bash -c "DPM Manager" dpmmgr
exit 0
PREUN
/bin/sh
export LANG=C
if [ $1 -eq 0 ]; then
if ( /usr/sbin/update-alternatives --display dpm | \
grep currently | grep -q dpm-postgres ) ; then
/sbin/service dpm stop > /dev/null 2>&1 || :
fi
/usr/sbin/update-alternatives --remove dpm \
/usr/lib/dpm-postgres/dpm
/usr/sbin/update-alternatives --display dpm > /dev/null || \
/sbin/chkconfig --del dpm > /dev/null 2>&1 || :
fi
POSTIN
/bin/sh
updatedpm () {
[ -r /etc/sysconfig/dpm ] && . /etc/sysconfig/dpm
[ -z "$DPMCONFIGFILE" ] && DPMCONFIGFILE=/etc/DPMCONFIG
[ -r $DPMCONFIGFILE ] || return 0
dpmcfg=$(cat $DPMCONFIGFILE)
cfg1=$(echo $dpmcfg | cut -f1 -d@)
cfg2=$(echo $dpmcfg | cut -f2 -d@ -s)
user=$(echo $cfg1 | cut -f1 -d/)
passwd=$(echo $cfg1 | cut -f2 -d/ -s)
host=$(echo $cfg2 | cut -f1 -d/)
db=$(echo $cfg2 | cut -f2 -d/ -s)
[ -z "$user" ] && return 0
[ -z "$passwd" ] && return 0
[ -z "$host" ] && return 0
[ -z "$db" ] && db=dpm_db
export PGPASSWORD=$passwd
psql="psql -t -q -U $user $db"
vmajor=$($psql -c "select major from schema_version_dpm" 2>/dev/null)
vminor=$($psql -c "select minor from schema_version_dpm" 2>/dev/null)
vpatch=$($psql -c "select patch from schema_version_dpm" 2>/dev/null)
if [ -z "$vmajor" -o -z "$vminor" -o -z "$vpatch" ] ; then
return 0
fi
if [ $vmajor -eq 3 -a $vminor -eq 2 -a $vpatch -eq 0 ] ; then
$psql <<-EOF
ALTER TABLE dpm_fs ADD weight INTEGER;
UPDATE dpm_fs SET weight = 1;
UPDATE schema_version_dpm SET major = 3, minor = 3, patch = 0;
EOF
fi
return 0
}
updatedpm
/usr/sbin/update-alternatives --install /usr/sbin/dpm dpm \
/usr/lib/dpm-postgres/dpm 10 \
--slave /usr/share/man/man8/dpm.8.gz dpm.8.gz \
/usr/lib/dpm-postgres/dpm.8.gz \
--slave /usr/share/dpm/DPMCONFIG.templ DPMCONFIG.templ \
/usr/share/dpm-postgres/DPMCONFIG.templ \
--slave /etc/rc.d/init.d/dpm dpm.init \
/etc/dpm-postgres/dpm.init \
--slave /etc/sysconfig/dpm dpm.conf \
/etc/dpm-postgres/dpm.conf \
--slave /etc/logrotate.d/dpm dpm.logrotate \
/etc/dpm-postgres/dpm.logrotate \
--slave /usr/sbin/dpm-shutdown dpm-shutdown \
/usr/lib/dpm-postgres/dpm-shutdown \
--slave /usr/share/man/man8/dpm-shutdown.8.gz dpm-shutdown.8.gz \
/usr/lib/dpm-postgres/dpm-shutdown.8.gz \
--slave /usr/sbin/dpm-buildfsv dpm-buildfsv \
/usr/lib/dpm-postgres/dpm-buildfsv \
--slave /usr/share/man/man8/dpm-buildfsv.8.gz dpm-buildfsv.8.gz \
/usr/lib/dpm-postgres/dpm-buildfsv.8.gz
if [ $1 -eq 1 ]; then
/sbin/chkconfig --add dpm
fi
POSTUN
/bin/sh
export LANG=C
if [ $1 -ge 1 ]; then
if ( /usr/sbin/update-alternatives --display dpm | \
grep currently | grep -q dpm-postgres ) ; then
/sbin/service dpm condrestart > /dev/null 2>&1 || :
fi
fi
Triggers
dpm-postgres <
1.8.1.2-2
/bin/sh
# Restore alternatives removed by dpm-postgres preun
/usr/sbin/update-alternatives --install /usr/sbin/dpm dpm \
/usr/lib/dpm-postgres/dpm 10 \
--slave /usr/share/man/man8/dpm.8.gz dpm.8.gz \
/usr/lib/dpm-postgres/dpm.8.gz \
--slave /usr/share/dpm/DPMCONFIG.templ DPMCONFIG.templ \
/usr/share/dpm-postgres/DPMCONFIG.templ \
--slave /etc/rc.d/init.d/dpm dpm.init \
/etc/dpm-postgres/dpm.init \
--slave /etc/sysconfig/dpm dpm.conf \
/etc/dpm-postgres/dpm.conf \
--slave /etc/logrotate.d/dpm dpm.logrotate \
/etc/dpm-postgres/dpm.logrotate \
--slave /usr/sbin/dpm-shutdown dpm-shutdown \
/usr/lib/dpm-postgres/dpm-shutdown \
--slave /usr/share/man/man8/dpm-shutdown.8.gz dpm-shutdown.8.gz \
/usr/lib/dpm-postgres/dpm-shutdown.8.gz \
--slave /usr/sbin/dpm-buildfsv dpm-buildfsv \
/usr/lib/dpm-postgres/dpm-buildfsv \
--slave /usr/share/man/man8/dpm-buildfsv.8.gz dpm-buildfsv.8.gz \
/usr/lib/dpm-postgres/dpm-buildfsv.8.gz