diff options
author | jperkin <jperkin> | 2014-03-11 14:34:36 +0000 |
---|---|---|
committer | jperkin <jperkin> | 2014-03-11 14:34:36 +0000 |
commit | 25883a57642b6f9b0d13deb4b3574a9d4e4eba29 (patch) | |
tree | 7ee5b13abb9f96749121a307db970b8b85e953da /databases | |
parent | 8a57b7d09b39ddfb89bcd11bfffa4a2881c0821f (diff) | |
download | pkgsrc-25883a57642b6f9b0d13deb4b3574a9d4e4eba29.tar.gz |
Import initial SMF support for individual packages.
Diffstat (limited to 'databases')
30 files changed, 798 insertions, 11 deletions
diff --git a/databases/apache-cassandra/Makefile b/databases/apache-cassandra/Makefile index deb28adf435..0e2722c4506 100644 --- a/databases/apache-cassandra/Makefile +++ b/databases/apache-cassandra/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.15 2014/02/14 10:25:23 fhajny Exp $ +# $NetBSD: Makefile,v 1.16 2014/03/11 14:34:36 jperkin Exp $ # DISTNAME= apache-cassandra-${CASSANDRA_VER} @@ -29,6 +29,7 @@ EGDIR= ${PREFIX}/share/examples/cassandra DOCDIR= ${PREFIX}/share/doc/cassandra RCD_SCRIPTS= cassandra +SMF_NAME= cassandra CASSANDRA_USER?= cassandra CASSANDRA_GROUP?= cassandra PKG_GROUPS= ${CASSANDRA_GROUP} diff --git a/databases/apache-cassandra/files/smf/manifest.xml b/databases/apache-cassandra/files/smf/manifest.xml new file mode 100644 index 00000000000..bde53db7bfb --- /dev/null +++ b/databases/apache-cassandra/files/smf/manifest.xml @@ -0,0 +1,34 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type="manifest" name="@SMF_NAME@"> + <service name="@SMF_PREFIX@/@SMF_NAME@" type="service" version="1"> + <create_default_instance enabled="false" /> + <single_instance /> + <dependency name="network" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/milestone/network:default" /> + </dependency> + <dependency name="filesystem" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/system/filesystem/local" /> + </dependency> + <method_context project="@SMF_NAME@" working_directory="@CASSANDRA_HOME@"> + <method_credential user="@CASSANDRA_USER@" group="@CASSANDRA_GROUP@" /> + <method_environment> + <envvar name="JAVA_HOME" value="@PREFIX@/java/sun6" /> + <envvar name="JVM_OPTS" value="-d64" /> + </method_environment> + </method_context> + <exec_method type="method" name="start" exec="@PREFIX@/share/cassandra/bin/cassandra -p @VARBASE@/lib/cassandra/cassandra.pid" timeout_seconds="600" /> + <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" /> + <property_group name="startd" type="framework"> + <propval name="duration" type="astring" value="contract" /> + <propval name="ignore_error" type="astring" value="core,signal" /> + </property_group> + <property_group name="application" type="application"></property_group> + <stability value="Evolving" /> + <template> + <common_name> + <loctext xml:lang="C">Apache Cassandra</loctext> + </common_name> + </template> + </service> +</service_bundle> diff --git a/databases/couchdb/Makefile b/databases/couchdb/Makefile index e5effe55843..740af46ad3a 100644 --- a/databases/couchdb/Makefile +++ b/databases/couchdb/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.23 2014/02/12 23:17:38 tron Exp $ +# $NetBSD: Makefile,v 1.24 2014/03/11 14:34:36 jperkin Exp $ # DISTNAME= apache-couchdb-1.5.0 @@ -42,6 +42,10 @@ COUCH_RUNDIR?= ${VARBASE}/spool/couchdb COUCH_RUNDIR?= ${VARBASE}/run/couchdb .endif +FILES_SUBST+= COUCH_USER=${COUCH_USER} +FILES_SUBST+= COUCH_GROUP=${COUCH_GROUP} +FILES_SUBST+= COUCH_DBDIR=${COUCH_DBDIR} + OWN_DIRS= ${COUCH_LOGDIR} ${COUCH_DBDIR} ${COUCH_RUNDIR} ${PKG_SYSCONFDIR} OWN_DIRS_PERMS+= ${COUCH_DBDIR} ${COUCH_USER} ${COUCH_GROUP} 0770 OWN_DIRS_PERMS+= ${COUCH_LOGDIR} ${COUCH_USER} ${COUCH_GROUP} 0770 diff --git a/databases/couchdb/files/smf/manifest.xml b/databases/couchdb/files/smf/manifest.xml new file mode 100644 index 00000000000..a65ea028553 --- /dev/null +++ b/databases/couchdb/files/smf/manifest.xml @@ -0,0 +1,39 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type="manifest" name="@SMF_NAME@"> + <service name="@SMF_PREFIX@/@SMF_NAME@" type="service" version="1"> + <create_default_instance enabled="false" /> + <single_instance /> + <dependency name="network" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/milestone/network:default" /> + </dependency> + <dependency name="filesystem" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/system/filesystem/local" /> + </dependency> + <dependency name='@SMF_NAME@-epmd' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/@SMF_PREFIX@/epmd' /> + </dependency> + <method_context working_directory="@COUCH_DBDIR@"> + <method_credential user="@COUCH_USER@" group="@COUCH_GROUP@" /> + <method_environment> + <envvar name="PATH" value="@PREFIX@/sbin:@PREFIX@/bin:/sbin:/usr/sbin:/usr/bin" /> + <envvar name="HOME" value="@COUCH_DBDIR@" /> + </method_environment> + </method_context> + <exec_method type="method" name="start" exec="@PREFIX@/bin/couchdb -b" timeout_seconds="60" /> + <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" /> + <property_group name="startd" type="framework"> + <propval name="duration" type="astring" value="contract" /> + <propval name="ignore_error" type="astring" value="core,signal" /> + </property_group> + <property_group name="application" type="application"> + <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/local.ini" /> + </property_group> + <stability value="Evolving" /> + <template> + <common_name> + <loctext xml:lang="C">CouchDB server</loctext> + </common_name> + </template> + </service> +</service_bundle> diff --git a/databases/mysql51-server/Makefile b/databases/mysql51-server/Makefile index 12f0fd1345f..4a54acadeba 100644 --- a/databases/mysql51-server/Makefile +++ b/databases/mysql51-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.19 2014/02/12 23:17:39 tron Exp $ +# $NetBSD: Makefile,v 1.20 2014/03/11 14:34:36 jperkin Exp $ PKGNAME= ${DISTNAME:S/-/-server-/} PKGREVISION= 1 @@ -52,6 +52,8 @@ PKG_HOME.${MYSQL_USER}= ${MYSQL_DATADIR} PKG_SHELL.${MYSQL_USER}= ${SH} RCD_SCRIPTS= mysqld +SMF_NAME= mysql +SMF_METHODS= ${RCD_SCRIPTS} FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q} \ MYSQL_DATADIR=${MYSQL_DATADIR} \ diff --git a/databases/mysql51-server/files/smf/manifest.xml b/databases/mysql51-server/files/smf/manifest.xml new file mode 100644 index 00000000000..c84a56cf2f5 --- /dev/null +++ b/databases/mysql51-server/files/smf/manifest.xml @@ -0,0 +1,32 @@ +<?xml version='1.0'?> +<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <create_default_instance enabled='false' /> + <single_instance /> + <dependency name='fs' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local' /> + </dependency> + <dependency name='net' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/network/loopback' /> + </dependency> + <method_context project='mysql' working_directory='@MYSQL_DATADIR@'> + <method_credential user='@MYSQL_USER@' group='@MYSQL_GROUP@' /> + <method_environment> + <envvar name='LD_PRELOAD_32' value='/usr/lib/extendedFILE.so.1' /> + </method_environment> + </method_context> + <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ start' timeout_seconds='18446744073709551615' /> + <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ stop' timeout_seconds='18446744073709551615' /> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>MySQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='MySQL 5.1' section='1' /> + <doc_link name='mysql.com' uri='http://dev.mysql.com/docs' /> + </documentation> + </template> + </service> +</service_bundle> diff --git a/databases/mysql51-server/files/smf/mysqld.sh b/databases/mysql51-server/files/smf/mysqld.sh new file mode 100644 index 00000000000..ebc19be01e6 --- /dev/null +++ b/databases/mysql51-server/files/smf/mysqld.sh @@ -0,0 +1,31 @@ +#!@SMF_METHOD_SHELL@ +# +# $NetBSD: mysqld.sh,v 1.1 2014/03/11 14:34:36 jperkin Exp $ +# +# Init script for mysqld. +# + +. /lib/svc/share/smf_include.sh + +PIDFILE="@MYSQL_DATADIR@/mysql.pid" + +ulimit -n 10240 + +case "$1" in +start) + @LOCALBASE@/sbin/mysqld --user=mysql \ + --basedir=@LOCALBASE@ \ + --datadir=@MYSQL_DATADIR@ \ + --pid-file=${PIDFILE} \ + --log-error=@VARBASE@/log/mysql/error.log & + ;; +stop) + [ -f ${PIDFILE} ] && kill `@HEAD@ -1 ${PIDFILE}` + ;; +*) + echo "Usage: $0 {start|stop}" >&2 + exit 1 + ;; +esac + +exit $SMF_EXIT_OK diff --git a/databases/mysql55-server/Makefile b/databases/mysql55-server/Makefile index 44756148a0f..9f6d0357a0c 100644 --- a/databases/mysql55-server/Makefile +++ b/databases/mysql55-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.18 2014/02/12 23:17:39 tron Exp $ +# $NetBSD: Makefile,v 1.19 2014/03/11 14:34:36 jperkin Exp $ PKGNAME= ${DISTNAME:S/-/-server-/} PKGREVISION= 1 @@ -45,6 +45,8 @@ PKG_HOME.${MYSQL_USER}= ${MYSQL_DATADIR} PKG_SHELL.${MYSQL_USER}= ${SH} RCD_SCRIPTS= mysqld +SMF_NAME= mysql +SMF_METHODS= ${RCD_SCRIPTS} FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q} FILES_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR} diff --git a/databases/mysql55-server/files/smf/manifest.xml b/databases/mysql55-server/files/smf/manifest.xml new file mode 100644 index 00000000000..324044fd143 --- /dev/null +++ b/databases/mysql55-server/files/smf/manifest.xml @@ -0,0 +1,32 @@ +<?xml version='1.0'?> +<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <create_default_instance enabled='false' /> + <single_instance /> + <dependency name='fs' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local' /> + </dependency> + <dependency name='net' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/network/loopback' /> + </dependency> + <method_context project='mysql' working_directory='@MYSQL_DATADIR@'> + <method_credential user='@MYSQL_USER@' group='@MYSQL_GROUP@' /> + <method_environment> + <envvar name='LD_PRELOAD_32' value='/usr/lib/extendedFILE.so.1' /> + </method_environment> + </method_context> + <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ start' timeout_seconds='18446744073709551615' /> + <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ stop' timeout_seconds='18446744073709551615' /> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>MySQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='MySQL 5.5' section='1' /> + <doc_link name='mysql.com' uri='http://dev.mysql.com/docs' /> + </documentation> + </template> + </service> +</service_bundle> diff --git a/databases/mysql55-server/files/smf/mysqld.sh b/databases/mysql55-server/files/smf/mysqld.sh new file mode 100644 index 00000000000..ebc19be01e6 --- /dev/null +++ b/databases/mysql55-server/files/smf/mysqld.sh @@ -0,0 +1,31 @@ +#!@SMF_METHOD_SHELL@ +# +# $NetBSD: mysqld.sh,v 1.1 2014/03/11 14:34:36 jperkin Exp $ +# +# Init script for mysqld. +# + +. /lib/svc/share/smf_include.sh + +PIDFILE="@MYSQL_DATADIR@/mysql.pid" + +ulimit -n 10240 + +case "$1" in +start) + @LOCALBASE@/sbin/mysqld --user=mysql \ + --basedir=@LOCALBASE@ \ + --datadir=@MYSQL_DATADIR@ \ + --pid-file=${PIDFILE} \ + --log-error=@VARBASE@/log/mysql/error.log & + ;; +stop) + [ -f ${PIDFILE} ] && kill `@HEAD@ -1 ${PIDFILE}` + ;; +*) + echo "Usage: $0 {start|stop}" >&2 + exit 1 + ;; +esac + +exit $SMF_EXIT_OK diff --git a/databases/mysql56-server/Makefile b/databases/mysql56-server/Makefile index 11b069d43f5..c734bd677a4 100644 --- a/databases/mysql56-server/Makefile +++ b/databases/mysql56-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.13 2014/02/13 07:49:56 adam Exp $ +# $NetBSD: Makefile,v 1.14 2014/03/11 14:34:36 jperkin Exp $ PKGNAME= ${DISTNAME:S/-/-server-/} SVR4_PKGNAME= mysqs @@ -45,6 +45,8 @@ PKG_HOME.${MYSQL_USER}= ${MYSQL_DATADIR} PKG_SHELL.${MYSQL_USER}= ${SH} RCD_SCRIPTS= mysqld +SMF_NAME= mysql +SMF_METHODS= ${RCD_SCRIPTS} FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q} FILES_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR} diff --git a/databases/mysql56-server/files/smf/manifest.xml b/databases/mysql56-server/files/smf/manifest.xml new file mode 100644 index 00000000000..675e0079a6e --- /dev/null +++ b/databases/mysql56-server/files/smf/manifest.xml @@ -0,0 +1,32 @@ +<?xml version='1.0'?> +<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <create_default_instance enabled='false' /> + <single_instance /> + <dependency name='fs' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local' /> + </dependency> + <dependency name='net' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/network/loopback' /> + </dependency> + <method_context project='mysql' working_directory='@MYSQL_DATADIR@'> + <method_credential user='@MYSQL_USER@' group='@MYSQL_GROUP@' /> + <method_environment> + <envvar name='LD_PRELOAD_32' value='/usr/lib/extendedFILE.so.1' /> + </method_environment> + </method_context> + <exec_method name='start' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ start' timeout_seconds='18446744073709551615' /> + <exec_method name='stop' type='method' exec='@PREFIX@/@SMF_METHOD_FILE.mysql@ stop' timeout_seconds='18446744073709551615' /> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>MySQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='MySQL 5.6' section='1' /> + <doc_link name='mysql.com' uri='http://dev.mysql.com/docs' /> + </documentation> + </template> + </service> +</service_bundle> diff --git a/databases/mysql56-server/files/smf/mysqld.sh b/databases/mysql56-server/files/smf/mysqld.sh new file mode 100644 index 00000000000..ebc19be01e6 --- /dev/null +++ b/databases/mysql56-server/files/smf/mysqld.sh @@ -0,0 +1,31 @@ +#!@SMF_METHOD_SHELL@ +# +# $NetBSD: mysqld.sh,v 1.1 2014/03/11 14:34:36 jperkin Exp $ +# +# Init script for mysqld. +# + +. /lib/svc/share/smf_include.sh + +PIDFILE="@MYSQL_DATADIR@/mysql.pid" + +ulimit -n 10240 + +case "$1" in +start) + @LOCALBASE@/sbin/mysqld --user=mysql \ + --basedir=@LOCALBASE@ \ + --datadir=@MYSQL_DATADIR@ \ + --pid-file=${PIDFILE} \ + --log-error=@VARBASE@/log/mysql/error.log & + ;; +stop) + [ -f ${PIDFILE} ] && kill `@HEAD@ -1 ${PIDFILE}` + ;; +*) + echo "Usage: $0 {start|stop}" >&2 + exit 1 + ;; +esac + +exit $SMF_EXIT_OK diff --git a/databases/postgresql84-server/Makefile b/databases/postgresql84-server/Makefile index 9a5096a7203..1ad7212cdef 100644 --- a/databases/postgresql84-server/Makefile +++ b/databases/postgresql84-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.25 2014/02/23 11:25:51 adam Exp $ +# $NetBSD: Makefile,v 1.26 2014/03/11 14:34:37 jperkin Exp $ PKGNAME= ${DISTNAME:C/-/84-server-/} COMMENT= PostgreSQL database server programs @@ -60,6 +60,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator PKG_HOME.${PGUSER}= ${PGHOME} RCD_SCRIPTS= pgsql +SMF_METHODS= postgresql +SMF_NAME= postgresql .include "../../databases/postgresql84-client/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" diff --git a/databases/postgresql84-server/files/smf/manifest.xml b/databases/postgresql84-server/files/smf/manifest.xml new file mode 100644 index 00000000000..2e9972f4bd3 --- /dev/null +++ b/databases/postgresql84-server/files/smf/manifest.xml @@ -0,0 +1,37 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <dependency name='network' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/milestone/network:default' /> + </dependency> + <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local:default' /> + </dependency> + <method_context project='postgres'> + <method_credential user='@PGUSER@' group='@PGGROUP@' /> + <method_environment> + <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" /> + </method_environment> + </method_context> + <instance name='@SMF_INSTANCE@' enabled='false'> + <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' /> + <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' /> + <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' /> + <property_group name='config' type='application'> + <propval name='data' type='astring' value='@PGHOME@/data84' /> + <propval name='log' type='astring' value='@PGLOGFILE@' /> + </property_group> + </instance> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>PostgreSQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='postgres' section='1M' /> + <doc_link name='postgresql.org' uri='http://postgresql.org' /> + </documentation> + </template> + </service> +</service_bundle> diff --git a/databases/postgresql84-server/files/smf/postgresql.sh b/databases/postgresql84-server/files/smf/postgresql.sh new file mode 100644 index 00000000000..4b3d4d19cf9 --- /dev/null +++ b/databases/postgresql84-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 diff --git a/databases/postgresql90-server/Makefile b/databases/postgresql90-server/Makefile index 14d0b26bf32..f6e49923837 100644 --- a/databases/postgresql90-server/Makefile +++ b/databases/postgresql90-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.20 2014/02/23 11:25:51 adam Exp $ +# $NetBSD: Makefile,v 1.21 2014/03/11 14:34:37 jperkin Exp $ PKGNAME= ${DISTNAME:C/-/90-server-/} COMMENT= PostgreSQL database server programs @@ -63,6 +63,8 @@ PKG_GECOS.${PGUSER}= PostgreSQL database administrator PKG_HOME.${PGUSER}= ${PGHOME} RCD_SCRIPTS= pgsql +SMF_NAME= postgresql +SMF_METHODS= postgresql .include "../../databases/postgresql90-client/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" diff --git a/databases/postgresql90-server/files/smf/manifest.xml b/databases/postgresql90-server/files/smf/manifest.xml new file mode 100644 index 00000000000..089639fb65e --- /dev/null +++ b/databases/postgresql90-server/files/smf/manifest.xml @@ -0,0 +1,37 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <create_default_instance enabled='false' /> + <single_instance /> + <dependency name='network' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/milestone/network:default' /> + </dependency> + <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local:default' /> + </dependency> + <method_context project='postgres'> + <method_credential user='@PGUSER@' group='@PGGROUP@' /> + <method_environment> + <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" /> + </method_environment> + </method_context> + <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' /> + <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' /> + <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' /> + <property_group name='config' type='application'> + <propval name='data' type='astring' value='@PGDATA@' /> + <propval name='log' type='astring' value='@PGLOGFILE@' /> + </property_group> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>PostgreSQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='postgres' section='1M' /> + <doc_link name='postgresql.org' uri='http://postgresql.org' /> + </documentation> + </template> + </service> +</service_bundle> diff --git a/databases/postgresql90-server/files/smf/postgresql.sh b/databases/postgresql90-server/files/smf/postgresql.sh new file mode 100644 index 00000000000..4b3d4d19cf9 --- /dev/null +++ b/databases/postgresql90-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 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 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <create_default_instance enabled='false' /> + <single_instance /> + <dependency name='network' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/milestone/network:default' /> + </dependency> + <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local:default' /> + </dependency> + <method_context project='postgres'> + <method_credential user='@PGUSER@' group='@PGGROUP@' /> + <method_environment> + <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" /> + </method_environment> + </method_context> + <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' /> + <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' /> + <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' /> + <property_group name='config' type='application'> + <propval name='data' type='astring' value='@PGHOME@/data' /> + <propval name='log' type='astring' value='@VARBASE@/log/postgresql.log' /> + </property_group> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>PostgreSQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='postgres' section='1M' /> + <doc_link name='postgresql.org' uri='http://postgresql.org' /> + </documentation> + </template> + </service> +</service_bundle> 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 diff --git a/databases/postgresql92-server/Makefile b/databases/postgresql92-server/Makefile index 5940ff6f4ae..7943ee44eaa 100644 --- a/databases/postgresql92-server/Makefile +++ b/databases/postgresql92-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.9 2014/02/23 11:25:53 adam Exp $ +# $NetBSD: Makefile,v 1.10 2014/03/11 14:34:37 jperkin Exp $ PKGNAME= ${DISTNAME:C/-/92-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/postgresql92-client/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" diff --git a/databases/postgresql92-server/files/smf/manifest.xml b/databases/postgresql92-server/files/smf/manifest.xml new file mode 100644 index 00000000000..73ebcb6d4c6 --- /dev/null +++ b/databases/postgresql92-server/files/smf/manifest.xml @@ -0,0 +1,37 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <create_default_instance enabled='false' /> + <single_instance /> + <dependency name='network' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/milestone/network:default' /> + </dependency> + <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local:default' /> + </dependency> + <method_context project='postgres'> + <method_credential user='@PGUSER@' group='@PGGROUP@' /> + <method_environment> + <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" /> + </method_environment> + </method_context> + <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' /> + <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' /> + <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' /> + <property_group name='config' type='application'> + <propval name='data' type='astring' value='@PGHOME@/data' /> + <propval name='log' type='astring' value='@VARBASE@/log/postgresql.log' /> + </property_group> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>PostgreSQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='postgres' section='1M' /> + <doc_link name='postgresql.org' uri='http://postgresql.org' /> + </documentation> + </template> + </service> +</service_bundle> diff --git a/databases/postgresql92-server/files/smf/postgresql.sh b/databases/postgresql92-server/files/smf/postgresql.sh new file mode 100644 index 00000000000..4b3d4d19cf9 --- /dev/null +++ b/databases/postgresql92-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 diff --git a/databases/postgresql93-server/Makefile b/databases/postgresql93-server/Makefile index f6b578ce62f..0e330f2d6d7 100644 --- a/databases/postgresql93-server/Makefile +++ b/databases/postgresql93-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.4 2014/02/23 11:25:54 adam Exp $ +# $NetBSD: Makefile,v 1.5 2014/03/11 14:34:37 jperkin Exp $ PKGNAME= ${DISTNAME:C/-/93-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/postgresql93-client/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" diff --git a/databases/postgresql93-server/files/smf/manifest.xml b/databases/postgresql93-server/files/smf/manifest.xml new file mode 100644 index 00000000000..73ebcb6d4c6 --- /dev/null +++ b/databases/postgresql93-server/files/smf/manifest.xml @@ -0,0 +1,37 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type='manifest' name='@SMF_NAME@'> + <service name='@SMF_PREFIX@/@SMF_NAME@' type='service' version='1'> + <create_default_instance enabled='false' /> + <single_instance /> + <dependency name='network' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/milestone/network:default' /> + </dependency> + <dependency name='filesystem-local' grouping='require_all' restart_on='none' type='service'> + <service_fmri value='svc:/system/filesystem/local:default' /> + </dependency> + <method_context project='postgres'> + <method_credential user='@PGUSER@' group='@PGGROUP@' /> + <method_environment> + <envvar name="LD_PRELOAD_32" value="/usr/lib/extendedFILE.so.1" /> + </method_environment> + </method_context> + <exec_method type='method' name='start' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ start' timeout_seconds='300' /> + <exec_method type='method' name='stop' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ stop' timeout_seconds='300' /> + <exec_method type='method' name='refresh' exec='@PREFIX@/@SMF_METHOD_FILE.postgresql@ refresh' timeout_seconds='60' /> + <property_group name='config' type='application'> + <propval name='data' type='astring' value='@PGHOME@/data' /> + <propval name='log' type='astring' value='@VARBASE@/log/postgresql.log' /> + </property_group> + <stability value='Evolving' /> + <template> + <common_name> + <loctext xml:lang='C'>PostgreSQL RDBMS</loctext> + </common_name> + <documentation> + <manpage title='postgres' section='1M' /> + <doc_link name='postgresql.org' uri='http://postgresql.org' /> + </documentation> + </template> + </service> +</service_bundle> diff --git a/databases/postgresql93-server/files/smf/postgresql.sh b/databases/postgresql93-server/files/smf/postgresql.sh new file mode 100644 index 00000000000..4b3d4d19cf9 --- /dev/null +++ b/databases/postgresql93-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 diff --git a/databases/redis/Makefile b/databases/redis/Makefile index 7805c197a1c..b9906e6aba3 100644 --- a/databases/redis/Makefile +++ b/databases/redis/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.6 2014/03/10 13:24:13 fhajny Exp $ +# $NetBSD: Makefile,v 1.7 2014/03/11 14:34:37 jperkin Exp $ DISTNAME= redis-2.8.7 CATEGORIES= databases @@ -42,6 +42,8 @@ PKG_GECOS.${REDIS_USER}= Redis daemon user PKG_HOME.${REDIS_USER}= ${REDIS_DBDIR} FILES_SUBST+= REDIS_USER=${REDIS_USER} +FILES_SUBST+= REDIS_GROUP=${REDIS_GROUP} +FILES_SUBST+= REDIS_DATADIR=${REDIS_DATADIR} SUBST_CLASSES+= fix-paths SUBST_STAGE.fix-paths= post-patch diff --git a/databases/redis/files/smf/manifest.xml b/databases/redis/files/smf/manifest.xml new file mode 100644 index 00000000000..d8aea5cbf7a --- /dev/null +++ b/databases/redis/files/smf/manifest.xml @@ -0,0 +1,32 @@ +<?xml version="1.0"?> +<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1"> +<service_bundle type="manifest" name="@SMF_NAME@"> + <service name="@SMF_PREFIX@/@SMF_NAME@" type="service" version="1"> + <create_default_instance enabled="false" /> + <single_instance /> + <dependency name="network" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/milestone/network:default" /> + </dependency> + <dependency name="filesystem" grouping="require_all" restart_on="error" type="service"> + <service_fmri value="svc:/system/filesystem/local" /> + </dependency> + <method_context working_directory="@REDIS_DATADIR@"> + <method_credential user="@REDIS_USER@" group="@REDIS_GROUP@" /> + </method_context> + <exec_method type="method" name="start" exec="@PREFIX@/bin/redis-server %{config_file}" timeout_seconds="60" /> + <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60" /> + <property_group name="startd" type="framework"> + <propval name="duration" type="astring" value="contract" /> + <propval name="ignore_error" type="astring" value="core,signal" /> + </property_group> + <property_group name="application" type="application"> + <propval name="config_file" type="astring" value="@PKG_SYSCONFDIR@/redis.conf" /> + </property_group> + <stability value="Evolving" /> + <template> + <common_name> + <loctext xml:lang="C">Redis server</loctext> + </common_name> + </template> + </service> +</service_bundle> |