Hi Julien Thanks for your feedback, and I'm sorry for having caused more work on the Release-Team. I'm CC'in the maintainer of couriergraph. On Sun, Nov 11, 2012 at 05:29:54PM +0100, Julien Cristau wrote: > On Tue, Nov 6, 2012 at 21:00:38 +0100, Salvatore Bonaccorso wrote: > > > diff -u couriergraph-0.25/debian/init couriergraph-0.25/debian/init > > --- couriergraph-0.25/debian/init > > +++ couriergraph-0.25/debian/init > > @@ -14,7 +14,8 @@ > > DESC="Courier login Statistics" > > DAEMON=/usr/sbin/couriergraph.pl > > > > -PIDFILE=/var/run/servergraph/couriergraph.pid > > +PIDDIR=/var/run/servergraph > > +PIDFILE=$PIDDIR/couriergraph.pid > > RRD_DIR=/var/lib/couriergraph > > RRD_NAME=couriergraph > > > > @@ -23,14 +24,25 @@ > > if [ -f $CONFIG ]; then > > . $CONFIG > > fi > > - > > + > > +if [ ! -d $PIDDIR ]; then > > + mkdir -p $PIDDIR > > + chown daemon:root $PIDDIR > > +fi > > + > > case "$1" in > > start) > > echo -n "Starting $DESC: " > > - start-stop-daemon --start --quiet --pidfile $PIDFILE \ > > - --exec $DAEMON -N 15 -c daemon:adm -- \ > > - -l $MAIL_LOG -d --daemon_rrd=$RRD_DIR --rrd_name=$RRD_NAME > > - echo "$NAME." > > + # If pid file is present the daemon is probably running > > + if [ -f "$PIDFILE" ]; then > > + echo "already running." > > + exit 1 > > This is broken. Leave that work to s-s-d, it's more likely to do it > correctly. Though I guess that might not work with --exec $DAEMON, so > you'll want to use --startas instead, and either change --exec to perl, > or use --name. Also, --oknodo. Would a change (as minimal as possible) like the following be acceptable? ----cut---------cut---------cut---------cut---------cut---------cut----- --- /etc/init.d/couriergraph.bak 2012-11-11 19:12:04.020761621 +0100 +++ /etc/init.d/couriergraph 2012-11-11 21:49:16.048757832 +0100 @@ -33,16 +33,10 @@ case "$1" in start) echo -n "Starting $DESC: " - # If pid file is present the daemon is probably running - if [ -f "$PIDFILE" ]; then - echo "already running." - exit 1 - else - start-stop-daemon --start --quiet --pidfile $PIDFILE \ - --exec $DAEMON -N 15 -c daemon:adm -- \ - -l $MAIL_LOG -d --daemon_rrd=$RRD_DIR --rrd_name=$RRD_NAME - echo "$NAME." - fi + start-stop-daemon --start --oknodo --quiet --pidfile $PIDFILE \ + --startas $DAEMON --name couriergraph.pl -N 15 -c daemon:adm -- \ + -l $MAIL_LOG -d --daemon_rrd=$RRD_DIR --rrd_name=$RRD_NAME + echo "$NAME." ;; stop) ----cut---------cut---------cut---------cut---------cut---------cut----- so, reverting the check for pidfile, and instead using --oknodo, --startas and explicitly check --name on couriergraph.pl. Attached is the full proposed debdiff (against the version in wheezy). Regards, Salvatore
diff -u couriergraph-0.25/debian/changelog couriergraph-0.25/debian/changelog --- couriergraph-0.25/debian/changelog +++ couriergraph-0.25/debian/changelog @@ -1,3 +1,32 @@ +couriergraph (0.25-4.3) unstable; urgency=low + + * Non-maintainer upload. + * Improving start handling of couriergraph daemon. + Instead of introducing broken check for testing if daemon is already + running, leave the work to the start-stop-daemon. Use --oknodo, + --startas and --name to make sure at most one instance of the daemon is + running. + Thanks to Julien Cristau <jcristau@debian.org> + + -- Salvatore Bonaccorso <carnil@debian.org> Sun, 11 Nov 2012 21:58:32 +0100 + +couriergraph (0.25-4.2) unstable; urgency=low + + * Non-maintainer upload. + * Don't provide /var/run/servergraph in binary package. + Fix "Ships a folder in /var/run or /var/lock (Policy Manual section + 9.3.2)". Create /var/run/servergraph in initscript if + /var/run/servergraph is not present. + Thanks to Thomas Goirand <zigo@debian.org> (Closes: #689884) + * Check if daemon pid file is present and don't start daemon. + Check if daemon pid is present. If pid file is present assume the daemon + is still running and do not start another instance. + This is otherwise a Debian Policy 9.3.2 violation. (Closes: #692157) + * Update Brazilian Portuguese debconf templates translation. + Thanks to Adriano Rafael Gomes <adrianorg@gmail.com> (Closes: #662169) + + -- Salvatore Bonaccorso <carnil@debian.org> Fri, 02 Nov 2012 21:22:11 +0100 + couriergraph (0.25-4.1) unstable; urgency=low * Non-maintainer upload. diff -u couriergraph-0.25/debian/dirs couriergraph-0.25/debian/dirs --- couriergraph-0.25/debian/dirs +++ couriergraph-0.25/debian/dirs @@ -4 +3,0 @@ -var/run/servergraph diff -u couriergraph-0.25/debian/init couriergraph-0.25/debian/init --- couriergraph-0.25/debian/init +++ couriergraph-0.25/debian/init @@ -14,7 +14,8 @@ DESC="Courier login Statistics" DAEMON=/usr/sbin/couriergraph.pl -PIDFILE=/var/run/servergraph/couriergraph.pid +PIDDIR=/var/run/servergraph +PIDFILE=$PIDDIR/couriergraph.pid RRD_DIR=/var/lib/couriergraph RRD_NAME=couriergraph @@ -23,12 +24,17 @@ if [ -f $CONFIG ]; then . $CONFIG fi - + +if [ ! -d $PIDDIR ]; then + mkdir -p $PIDDIR + chown daemon:root $PIDDIR +fi + case "$1" in start) echo -n "Starting $DESC: " - start-stop-daemon --start --quiet --pidfile $PIDFILE \ - --exec $DAEMON -N 15 -c daemon:adm -- \ + start-stop-daemon --start --oknodo --quiet --pidfile $PIDFILE \ + --startas $DAEMON --name couriergraph.pl -N 15 -c daemon:adm -- \ -l $MAIL_LOG -d --daemon_rrd=$RRD_DIR --rrd_name=$RRD_NAME echo "$NAME." ;; diff -u couriergraph-0.25/debian/postinst couriergraph-0.25/debian/postinst --- couriergraph-0.25/debian/postinst +++ couriergraph-0.25/debian/postinst @@ -27,7 +27,6 @@ # installation fails and the `postinst' is called with `abort-upgrade', # `abort-remove' or `abort-deconfigure'. -RUNDIR=/var/run/servergraph DATADIR=/var/lib/couriergraph CACHEDIR=/var/cache/couriergraph DEFAULTS=/etc/default/couriergraph @@ -35,9 +34,6 @@ case "$1" in configure) - mkdir -p $RUNDIR || true - chown daemon:root $RUNDIR - if [ ! -d $DATADIR ]; then mkdir $DATADIR; fi chown root:adm $DATADIR chmod 775 $DATADIR diff -u couriergraph-0.25/debian/po/pt_BR.po couriergraph-0.25/debian/po/pt_BR.po --- couriergraph-0.25/debian/po/pt_BR.po +++ couriergraph-0.25/debian/po/pt_BR.po @@ -1,25 +1,19 @@ -# -# Translators, if you are not familiar with the PO format, gettext -# documentation is worth reading, especially sections dedicated to -# this format, e.g. by running: -# info -n '(gettext)PO Files' -# info -n '(gettext)Header Entry' -# -# Some information specific to po-debconf are available at -# /usr/share/doc/po-debconf/README-trans -# or http://www.debian.org/intl/l10n/po-debconf/README-trans -# -# Developers do not need to manually edit POT or PO files. +# Debconf translations for couriergraph. +# Copyright (C) 2012 THE couriergraph'S COPYRIGHT HOLDER +# This file is distributed under the same license as the couriergraph package. +# André Luís Lopes <andrelop@debian.org>, 2004. +# Adriano Rafael Gomes <adrianorg@gmail.com>, 2012. # msgid "" msgstr "" -"Project-Id-Version: couriergraph\n" +"Project-Id-Version: couriergraph 0.25-4.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-15 23:41+0100\n" -"PO-Revision-Date: 2004-10-19 18:34+0200\n" -"Last-Translator: André Luís Lopes <andrelop@debian.org>\n" -"Language-Team: Debian-BR Project <debian-l10n-portuguese@lists.debian.org>\n" -"Language: \n" +"PO-Revision-Date: 2012-02-26 13:39-0300\n" +"Last-Translator: Adriano Rafael Gomes <adrianorg@gmail.com>\n" +"Language-Team: Brazilian Portuguese <debian-l10n-portuguese@lists.debian." +"org>\n" +"Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,7 +22,7 @@ #. Description #: ../templates:1001 msgid "Should CourierGraph start on boot?" -msgstr "O CourierGraph deve ser iniciado na inicialização da máquina ?" +msgstr "O CourierGraph deve ser iniciado na inicialização da máquina?" #. Type: boolean #. Description @@ -37,9 +31,9 @@ "Couriergraph can start on boot time as a daemon. Then it will monitor your " "mail logfile for changes. This is recommended." msgstr "" -"O CourierGraph pode ser iniciado na inicialização da máquna como um daemon. " -"Assim o mesmo irá monitorar seu arquivo de logs de e-mails em busca de " -"mudanças. Este é o método recomendado." +"O CourierGraph pode ser iniciado na inicialização da máquina como um daemon. " +"Assim, ele monitorará seu arquivo de log de e-mails em busca de mudanças. " +"Esse é o método recomendado." #. Type: boolean #. Description @@ -53,9 +47,8 @@ #. Type: string #. Description #: ../templates:2001 -#, fuzzy msgid "Logfile to be used by couriergraph:" -msgstr "Qual arquivo de log deverá ser usado pelo couriergraph ?" +msgstr "Arquivo de log para ser usado pelo couriergraph:" #. Type: string #. Description @@ -67,20 +60,19 @@ -"Informe o arquivo de log que deverá ser usado paar criar as bases de dados " -"para o couriergraph. Em caso de dúvidas, mantenha em branco." +"Informe o arquivo de log que deverá ser usado para criar as bases de dados " +"para o couriergraph. Em caso de dúvidas, mantenha o valor padrão." #. Type: boolean #. Description #: ../templates:3001 msgid "Remove RRD files on purge?" -msgstr "Remover arquivo RRD na remoção do pacote ?" +msgstr "Remover arquivos RRD ao expurgar o pacote?" #. Type: boolean #. Description #: ../templates:3001 -#, fuzzy msgid "" "Couriergraph keeps its database files under /var/lib/couriergraph. State " "whether this directory should be removed completely on purge or not." msgstr "" "O CourierGraph mantém seus arquivos de bases de dados sob o diretório /var/" -"lib/couriergraph. Esse diretório deverá ser completamente removido quando o " -"pacote couriergraph for removido ?" +"lib/couriergraph. Indique se esse diretório deverá ser completamente " +"removido quando o pacote couriergraph for expurgado."
Attachment:
signature.asc
Description: Digital signature