ports/156669: [patch] databases/virtuoso -- fix rc.d script
Pietro Cerutti
gahr at FreeBSD.org
Wed Apr 27 07:30:11 UTC 2011
>Number: 156669
>Category: ports
>Synopsis: [patch] databases/virtuoso -- fix rc.d script
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Apr 27 07:30:11 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Pietro Cerutti
>Release:
>Organization:
The FreeBSD Project
>Environment:
FreeBSD SN2000.medacta.ch 9.0-CURRENT FreeBSD 9.0-CURRENT #11: Tue Apr 12 18:03:04 CEST 2011 root at SN2000.medacta.ch:/usr/obj/usr/src/sys/IMAC amd64
>Description:
The provided rc.d script does not work.
>How-To-Repeat:
Try to run virtuoso using the rc.d script..
>Fix:
Patch attached with submission follows:
--- virtuoso.sh.in.orig 2010-07-22 11:48:10.321767067 +0200
+++ virtuoso.sh.in 2010-07-22 12:12:25.879033347 +0200
@@ -18,7 +18,7 @@
# start stop restart reload status
#
-command=%%PREFIX%%/bin/virtuoso
+command=%%PREFIX%%/bin/virtuoso-t
. /etc/rc.subr
@@ -27,23 +27,50 @@
# set defaults
virtuoso_enable=${virtuoso_enable:-"NO"}
virtuoso_user=virtuoso
-eval virtuoso_config=${virtuoso_config:-"~${virtuoso_user}/db/virtuoso.ini"}
-virtuoso_class=${virtuoso_class:-"default"}
+virtuoso_data=%%PREFIX%%/virtuoso
+virtuoso_config=db/virtuoso.ini
+virtuoso_flags="+configfile ${virtuoso_config}"
name=virtuoso
rcvar=`set_rcvar`
-command_args="-D ${virtuoso_data} ${virtuoso_flags}"
+command_args="${virtuoso_flags}"
extra_commands="reload"
-start_cmd="virtuoso_command start"
-stop_cmd="virtuoso_command stop"
-restart_cmd="virtuoso_command restart"
-reload_cmd="virtuoso_command reload"
-status_cmd="virtuoso_command status"
+start_cmd="virtuoso_start_command"
+stop_cmd="virtuoso_stop_command"
+restart_cmd="virtuoso_restart_command"
+reload_cmd="virtuoso_restart_command"
+status_cmd="virtuoso_status_command"
-virtuoso_command()
+virtuoso_start_command()
{
- su -l ${virtuoso_user} -c "exec ${command} ${command_args} ${rc_arg}"
+ su -l ${virtuoso_user} -c "cd ${virtuoso_data} && exec ${command} ${command_args}"
+}
+
+virtuoso_stop_command()
+{
+ pid=`pgrep virtuoso`
+ if [ "x$pid" != "x" ]; then
+ kill $pid
+ else
+ echo "Virtuoso not running."
+ fi
+}
+
+virtuoso_restart_command()
+{
+ virtuoso_stop_command
+ virtuoso_start_command
+}
+
+virtuoso_status_command()
+{
+ pid=`pgrep virtuoso`
+ if [ "x$pid" = "x" ]; then
+ echo "Virtuoso not running."
+ else
+ echo "Virtuoso running as pid $pid"
+ fi
}
run_rc_command "$1"
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list