debian/cubicweb-ctl.cubicweb.init
author Julien Cristau <julien.cristau@logilab.fr>
Wed, 23 Oct 2013 14:18:58 +0200
branchstable
changeset 9305 f7a738afc295
parent 7788 cc8670be7b2e
child 10235 684215aca046
permissions -rw-r--r--
[notification] avoid leaking cnxsets (closes #3243810) When sending notifications, we get each recipient as either an email address or a CWUser. In the latter case, we create a temporary session for that user and use it to send the mail. However, if we later decided to not send the mail after all, we'd leak the session and its cnxset. Add a try block inside the loop to make sure the temporary sessions are closed properly.

#!/bin/sh -e

### BEGIN INIT INFO
# Provides:          cubicweb
# Required-Start:    $remote_fs $syslog $local_fs $network
# Required-Stop:     $remote_fs $syslog $local_fs $network
# Should-Start:      postgresql pyro-nsd
# Should-Stop:       postgresql pyro-nsd
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start cubicweb application at boot time
### END INIT INFO

# FIXME Seems to be inadequate here
# FIXME If related to pyro, try instead:
# export PYRO_STORAGE="/tmp"
cd /tmp

# FIXME Work-around about the following lintian error
#     E: cubicweb-ctl: init.d-script-does-not-implement-required-option /etc/init.d/cubicweb start
#
# Check if we are sure to not want the start-stop-daemon machinery here
# Refer to Debian Policy Manual section 9.3.2 (Writing the scripts) for details.

case $1 in
    force-reload)
        python -W ignore /usr/bin/cubicweb-ctl reload --force
        ;;
    status)
        python -W ignore /usr/bin/cubicweb-ctl status
        ;;
    start|stop|restart|*)
        python -W ignore /usr/bin/cubicweb-ctl $1 --force
        ;;
esac