summaryrefslogtreecommitdiff
path: root/net/rabbitmq
diff options
context:
space:
mode:
authorjperkin <jperkin@pkgsrc.org>2014-03-11 14:34:36 +0000
committerjperkin <jperkin@pkgsrc.org>2014-03-11 14:34:36 +0000
commit76740313a3ac624b6ff51288f485f40d39d80cb1 (patch)
tree7ee5b13abb9f96749121a307db970b8b85e953da /net/rabbitmq
parent6bcea5495c4b03080e1f7cff4f0d1898590b2317 (diff)
downloadpkgsrc-76740313a3ac624b6ff51288f485f40d39d80cb1.tar.gz
Import initial SMF support for individual packages.
Diffstat (limited to 'net/rabbitmq')
-rw-r--r--net/rabbitmq/Makefile6
-rw-r--r--net/rabbitmq/files/smf/manifest.xml36
2 files changed, 41 insertions, 1 deletions
diff --git a/net/rabbitmq/Makefile b/net/rabbitmq/Makefile
index dd5660453e2..415f064a27b 100644
--- a/net/rabbitmq/Makefile
+++ b/net/rabbitmq/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.16 2014/03/10 11:18:41 fhajny Exp $
+# $NetBSD: Makefile,v 1.17 2014/03/11 14:34:39 jperkin Exp $
PKGNAME= rabbitmq-${RMQ_VERSION}
DISTNAME= rabbitmq-server-${RMQ_VERSION}
@@ -51,6 +51,10 @@ CONF_FILES+= share/examples/rabbitmq/rabbitmq-env.conf \
CONF_FILES+= share/examples/rabbitmq/rabbitmq.config.example \
${PKG_SYSCONFDIR}/rabbitmq.config
+FILES_SUBST+= RMQ_USER=${RMQ_USER}
+FILES_SUBST+= RMQ_GROUP=${RMQ_GROUP}
+FILES_SUBST+= RMQ_DIR=${RMQ_DIR}
+
INSTALLATION_DIRS+= share/examples/rabbitmq
SCRIPTS_DIR= ${WRKSRC}/scripts
diff --git a/net/rabbitmq/files/smf/manifest.xml b/net/rabbitmq/files/smf/manifest.xml
new file mode 100644
index 00000000000..cdd578c81c5
--- /dev/null
+++ b/net/rabbitmq/files/smf/manifest.xml
@@ -0,0 +1,36 @@
+<?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>
+ <method_credential user="@RMQ_USER@" group="@RMQ_GROUP@" />
+ <method_environment>
+ <envvar name="HOME" value="@RMQ_DIR@" />
+ <envvar name="PATH" value="@PREFIX@/sbin:@PREFIX@/bin:/sbin:/usr/sbin:/usr/bin" />
+ </method_environment>
+ </method_context>
+ <exec_method type="method" name="start" exec="@PREFIX@/sbin/rabbitmq-server" 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="child" />
+ <propval name="ignore_error" type="astring" value="core,signal" />
+ </property_group>
+ <stability value="Evolving" />
+ <template>
+ <common_name>
+ <loctext xml:lang="C">RabbitMQ Server</loctext>
+ </common_name>
+ </template>
+ </service>
+</service_bundle>