On 16 Sep 2011 21:16, "Gabor Kovesdan" <ga...@freebsd.org> wrote:
>
> On 2011.09.16. 17:51, Matthias Andree wrote:
>>
>> Am 16.09.2011 11:51, schrieb Lev Serebryakov:
>>>
>>> Hello, Freebsd-ports.
>>> You wrote 16 сентября 2011 г., 0:28:07:
>>>
>>>>> Really? I thought it was supposed to be standard behaviour- the
@stopdaemon
>>>>> line in pkg-plist facilitates that.
>>>>
>>>> While I totally understand why we do this, I have to say it's VERY
>>>> VERY annoying behavior especially when one upgrading a remote system
>>>> with multiple server daemon ports.  One have to watch the whole
>>>> process carefully and restart the daemon manually.
>>>
>>>   Yep, and even more annoyingly is that it is completely inconsistent:
>>>  some daemons are stopped, some not, etc.
>>
>> We do not currently have a standard procedure for that, nor do we record
>> the necessary state -- perhaps we should just discuss, vote, and add a
>> paragraph to the porter's handbook.
>>
>> We also need to bring the authors (or volunteers) for the de-facto
>> standard upgrade tools into the loop.
>>
>> My thoughts:
>>
>> - give the user a choice to configure whether to restart services
>>
>> - optional: give the users a chance to configure this per-service
>>
>> - discuss whether we want/need to support this (a) in the framework that
>> we currently use, (b) only in pkgng, (c) in portmaster and portupgrade
>> where necessary.
>
> Or we could have a facility to check whether services are running. For
example, I have some cron scripts, which are similar for all of the services
that I'm watching. They run periodically and restart services if they are
down. It does not matter if they are down because of an upgrade or a
failure, so this solution is more general. Here's an example that I have for
MySQL:
>
> #!/bin/sh
> PID_FILE="/var/db/mysql/server.mypc.hu.pid"
> PID=`cat $PID_FILE`
> EXECUTABLE="/usr/local/etc/rc.d/mysql-server start"
>
> if test -r $PID_FILE ; then
>        # pidfile exist, is it correct?
>        if kill -CHLD $PID >/dev/null 2>&1; then
>                # ok, exit silently
>                exit 0
>        fi
>        rm -f $PID_FILE
> fi
> echo ""
> echo "Couldn't find the MySQL server running, retsarting.."
> echo ""
> $EXECUTABLE
>

I would prefer to parse the output of rc status, but I presume this script
is more specialised.

Chris
_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to