From 25883a57642b6f9b0d13deb4b3574a9d4e4eba29 Mon Sep 17 00:00:00 2001 From: jperkin Date: Tue, 11 Mar 2014 14:34:36 +0000 Subject: Import initial SMF support for individual packages. --- databases/postgresql91-server/Makefile | 4 +- .../postgresql91-server/files/smf/manifest.xml | 37 ++++++++++++++ .../postgresql91-server/files/smf/postgresql.sh | 57 ++++++++++++++++++++++ 3 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 databases/postgresql91-server/files/smf/manifest.xml create mode 100644 databases/postgresql91-server/files/smf/postgresql.sh (limited to 'databases/postgresql91-server') diff --git a/databases/postgresql91-server/Makefile b/databases/postgresql91-server/Makefile index 998e727edce..e4d18fbfb2e 100644 --- a/databases/postgresql91-server/Makefile +++ b/databases/postgresql91-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.11 2014/02/23 11:25:52 adam Exp $ +# $NetBSD: Makefile,v 1.12 2014/03/11 14:34:37 jperkin Exp $ PKGNAME= ${DISTNAME:C/-/91-server-/} COMMENT= PostgreSQL database server programs @@ -63,6 +63,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator PKG_HOME.${PGUSER}= ${PGHOME} RCD_SCRIPTS= pgsql +SMF_METHODS= postgresql +SMF_NAME= postgresql .include "../../databases/postgresql91-client/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" diff --git a/databases/postgresql91-server/files/smf/manifest.xml b/databases/postgresql91-server/files/smf/manifest.xml new file mode 100644 index 00000000000..73ebcb6d4c6 --- /dev/null +++ b/databases/postgresql91-server/files/smf/manifest.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/databases/postgresql91-server/files/smf/postgresql.sh b/databases/postgresql91-server/files/smf/postgresql.sh new file mode 100644 index 00000000000..4b3d4d19cf9 --- /dev/null +++ b/databases/postgresql91-server/files/smf/postgresql.sh @@ -0,0 +1,57 @@ +#!/sbin/sh +# Copyright 2006 Sun Microsystems, Inc. All rights reserved. +# Use is subject to license terms. +# +# ident "%Z%%M% %I% %E SMI" +. /lib/svc/share/smf_include.sh + +# SMF_FMRI is the name of the target service. This allows multiple instances +# to use the same script. + +getproparg() +{ val=`svcprop -p $1 $SMF_FMRI` + [ -n "$val" ] && echo $val +} + +PGBIN=@PREFIX@/bin +PGDATA=`getproparg config/data` +PGLOG=`getproparg config/log` + +if [ -z $SMF_FMRI ]; then + echo "SMF framework variables are not initialized." + exit $SMF_EXIT_ERR +fi + +if [ -z $PGDATA ]; then + + echo "postgresql/data property not set" + exit $SMF_EXIT_ERR_CONFIG +fi + +if [ -z $PGLOG ]; then + + echo "postgresql/log property not set" + exit $SMF_EXIT_ERR_CONFIG +fi + +case "$1" in +'start') + ulimit -n 10240 + $PGBIN/pg_ctl -D $PGDATA -l $PGLOG start + ;; + +'stop') + $PGBIN/pg_ctl -D $PGDATA stop + ;; + +'refresh') + $PGBIN/pg_ctl -D $PGDATA reload + ;; +*) + + echo $"Usage: $0 {start|refresh}" + exit 1 + ;; + +esac +exit $SMF_EXIT_OK -- cgit v1.2.3