diff options
author | Nikolai Lifanov <lifanov@FreeBSD.org> | 2017-11-21 15:47:53 +0000 |
---|---|---|
committer | Nikolai Lifanov <lifanov@FreeBSD.org> | 2017-11-21 15:47:53 +0000 |
commit | 82bff8505174beadf2c092ecea837efe4c826579 (patch) | |
tree | de50dbebfdf26625350e9eff8353519f437269de /databases/arangodb32/files/arangod.in | |
parent | Fix post-patch target (diff) |
new port: databases/arangodb32
ArangoDB is a production ready highly available Multi-Model NoSQL database
PR: 223240
Submitted by: dev@dudu.ro
Differential Revision: https://reviews.freebsd.org/D12793
Notes
Notes:
svn path=/head/; revision=454616
Diffstat (limited to 'databases/arangodb32/files/arangod.in')
-rw-r--r-- | databases/arangodb32/files/arangod.in | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/databases/arangodb32/files/arangod.in b/databases/arangodb32/files/arangod.in new file mode 100644 index 000000000000..4edc4bf9a59e --- /dev/null +++ b/databases/arangodb32/files/arangod.in @@ -0,0 +1,85 @@ +#!/bin/sh + +# PROVIDE: arangod +# REQUIRE: NETWORK ldconfig +# KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# arangod_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable arangod. +# arangod_limits (bool): Set to "NO" by default. +# Set it to yes to run `limits -e -U arangodb` +# just before arangod starts. +# arangod_dbpath (str): Default to "/var/db/arangodb" +# Base database directory. +# arangod_logpath (str): Default to "/var/log/arangodb" +# Base logging directory +# arangod_apppath (str): Default to "/var/db/arangodb-apps" +# Base apps directory +# arangod_flags (str): Custom additional arguments to be passed to arangod. +# Default to "". +# arangod_config (str): Default to "%%PREFIX%%/etc/arangodb/arangod.conf" +# Path to config file +# + +. /etc/rc.subr + +name="arangod" +rcvar=arangod_enable + +load_rc_config $name + +: ${arangod_enable="NO"} +: ${arangod_limits="NO"} +: ${arangod_dbpath="/var/db/arangodb"} +: ${arangod_logpath="/var/log/arangodb"} +: ${arangod_apppath="/var/db/arangodb-apps"} +: ${arangod_flags=""} +: ${arangod_user="arangodb"} +: ${arangod_group="arangodb"} +: ${arangod_config="%%PREFIX%%/etc/arangodb/arangod.conf"} + +pidfile="${arangod_dbpath}/arangod.lock" +command=%%PREFIX%%/sbin/${name} +command_args="--configuration $arangod_config --database.directory $arangod_dbpath --log.output ${arangod_logpath}/arangod.log --javascript.app-path ${arangod_apppath} --daemon --pid-file ${pidfile} >/dev/null 2>/dev/null" +start_precmd="${name}_prestart" + +arangod_create_dbpath() +{ + mkdir ${arangod_dbpath} >/dev/null 2>/dev/null + [ $? -eq 0 ] && chown -R ${arangod_user}:${arangod_group} ${arangod_dbpath} +} + +arangod_create_logpath() +{ + mkdir ${arangod_logpath} >/dev/null 2>/dev/null + [ $? -eq 0 ] && chown -R ${arangod_user}:${arangod_group} ${arangod_logpath} +} + +arangod_create_apppath() +{ + mkdir ${arangod_apppath} >/dev/null 2>/dev/null + [ $? -eq 0 ] && chown -R ${arangod_user}:${arangod_group} ${arangod_apppath} +} + +arangod_prestart() +{ + if [ ! -d ${arangod_dbpath} ]; then + arangod_create_dbpath || return 1 + fi + if [ ! -d ${arangod_logpath} ]; then + arangod_create_logpath || return 1 + fi + if [ ! -d ${arangod_apppath} ]; then + arangod_create_apppath || return 1 + fi + if checkyesno arangod_limits; then + eval `/usr/bin/limits -e -U ${arangod_user}` 2>/dev/null + else + return 0 + fi +} + +run_rc_command "$1" |