debian/cubicweb-ctl.postinst
author Julien Cristau <julien.cristau@logilab.fr>, Quentin Roquefort <quentin@kpsule.me>
Fri, 10 Feb 2012 16:20:35 +0100
changeset 8211 543e1579ba0d
parent 1448 62f099f0916f
child 10559 5821ae654dfd
permissions -rw-r--r--
[repo] Add a publish/subscribe mechanism for inter-instance communication using zmq Each repo can have a publishing and any number of subscribing sockets whose addresses are specified in the instance's configuration. An application or cube can subscribe to some 'topics', and give a callback that gets called when a message matching that topic is received. As a proof of concept, this introduces a hook to clean up the caches associated with the repository when an entity is deleted. A subscription is added using Repository::zmq::add_subscription; the callback receives a list representing the received multi-part message as argument (the first element of the message is its topic).

#! /bin/sh -e

case "$1" in
    configure|abort-upgrade|abort-remove|abort-deconfigure)
        update-rc.d cubicweb defaults 99 >/dev/null
    ;;
    *)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac

if [ "$1" = configure ]; then
    # XXX bw compat: erudi -> cubicweb migration
    if [ -e "/etc/erudi.d/" ]; then
      mv /etc/erudi.d/* /etc/cubicweb.d/ && (
	  echo 'moved /etc/erudi.d/* to /etc/cubicweb.d/'
	  sed -i s/ginco/cubicweb/g /etc/*/*.py
	  sed -i s/erudi/cubicweb/ */*.conf
	  ) || true # empty dir
    fi
    if [ -e "/var/log/erudi/" ]; then
      mv /var/log/erudi/* /var/log/cubicweb/ && (
	  echo 'moved /var/log/erudi/* to /var/log/cubicweb/'
	  ) || true # empty dir
    fi
    if [ -e "/var/lib/erudi/backup" ]; then
      mv /var/lib/erudi/backup/* /var/lib/cubicweb/backup/ && (
	  echo 'moved /var/lib/erudi/backup/* to /var/lib/cubicweb/backup/'
	  ) || true # empty dir
    fi
    if [ -e "/var/lib/erudi/instances" ]; then
      mv /var/lib/erudi/instances/* /var/lib/cubicweb/instances/ && (
	  echo 'moved /var/lib/erudi/instances/* to /var/lib/cubicweb/instances/'
	  ) || true # empty dir
    fi
fi

#DEBHELPER#

exit 0