mirror of https://gitee.com/bigwinds/arangodb
159 lines
5.4 KiB
Plaintext
159 lines
5.4 KiB
Plaintext
################################################################################
|
|
## epm configuration file
|
|
## Documentation: http://www.epmhome.org
|
|
################################################################################
|
|
|
|
$version=${arangodb_version}
|
|
$release=${arangodb_release}
|
|
|
|
################################################################################
|
|
## ArangoDB
|
|
################################################################################
|
|
|
|
%product ArangoDB
|
|
%copyright 2012 by triAGENS GmbH
|
|
%vendor triAGENS GmbH
|
|
%license COPYING
|
|
%readme README
|
|
%description ArangoDB Software
|
|
%version ${version}
|
|
%release ${release}
|
|
|
|
################################################################################
|
|
## File List
|
|
################################################################################
|
|
|
|
d 0755 ${susr} ${sgrp} /etc/arangodb -
|
|
d 0755 ${susr} ${sgrp} /etc/arangodb/ -
|
|
c 0644 ${susr} ${sgrp} /etc/arangodb/arangod.conf ${project_dir}/etc/arangodb/arangod.conf
|
|
c 0644 ${susr} ${sgrp} /etc/arangodb/arangosh.conf ${project_dir}/etc/arangodb/arangosh.conf
|
|
|
|
f 0755 ${susr} ${sgrp} ${sbindir}/arangod-${arangodb_version} ${project_dir}/bin/arangod
|
|
l 000 ${rusr} ${rgrp} ${sbindir}/arangod ${sbindir}/arangod-${arangodb_version}
|
|
|
|
f 0755 ${susr} ${sgrp} ${bindir}/arangoimp ${project_dir}/bin/arangoimp
|
|
f 0755 ${susr} ${sgrp} ${bindir}/arangosh ${project_dir}/bin/arangosh
|
|
f 0755 ${susr} ${sgrp} ${bindir}/arango-password ${project_dir}/bin/arango-password
|
|
f 0755 ${susr} ${sgrp} ${bindir}/arango-upgrade ${project_dir}/bin/arango-upgrade
|
|
|
|
# database directory
|
|
d 0755 ${rusr} ${rgrp} ${data_dir} -
|
|
d 0755 ${susr} ${sgrp} ${data_dir}/arangodb -
|
|
|
|
# static files
|
|
d 0755 ${susr} ${sgrp} ${static_dir} -
|
|
d 0755 ${susr} ${sgrp} ${static_dir}/arangodb -
|
|
d 0755 ${susr} ${sgrp} ${static_dir}/arangodb/js -
|
|
d 0755 ${susr} ${sgrp} ${static_dir}/arangodb/html -
|
|
|
|
# PID file directory
|
|
d 0755 ${susr} ${sgrp} /var/run/arangodb -
|
|
|
|
# logfile directory
|
|
d 0755 ${susr} ${sgrp} /var/log/arangodb -
|
|
|
|
%include ${project_dir}/Installation/epm/arangodb.sublist
|
|
|
|
################################################################################
|
|
## Pre/Post Install
|
|
################################################################################
|
|
|
|
## -----------------------------------------------------------------------------
|
|
## MAC OS X
|
|
## -----------------------------------------------------------------------------
|
|
|
|
%ifdef macosx
|
|
d 0755 ${rusr} ${rgrp} /Library/LaunchDaemons/ -
|
|
f 0755 ${rusr} ${rgrp} /Library/LaunchDaemons/org.arangodb.plist.template ${project_dir}/Installation/MacOSX/org.arangodb.plist
|
|
%postinstall <<EOF
|
|
sed -e 's%@BINARY@%${sbindir}/arangod-${version}%g' -e 's%@CONFIGDIR@%/etc/arangodb%g' /Library/LaunchDaemons/org.arangodb.plist.template > /Library/LaunchDaemons/org.arangodb.plist
|
|
launchctl unload /Library/LaunchDaemons/org.arangodb.plist
|
|
|
|
if [ "`/usr/bin/find ${data_dir}/arangodb -type d -name 'collection-*'`" == "" ] ; then
|
|
${bindir}/arango-upgrade --database.directory "${data_dir}/arangodb"
|
|
fi
|
|
|
|
launchctl load /Library/LaunchDaemons/org.arangodb.plist
|
|
|
|
EOF
|
|
|
|
%preremove <<EOF
|
|
launchctl stop de.triagens.arango
|
|
launchctl unload /Library/LaunchDaemons/org.arangodb.plist
|
|
EOF
|
|
|
|
## -----------------------------------------------------------------------------
|
|
## LINUX
|
|
## -----------------------------------------------------------------------------
|
|
|
|
%else
|
|
%preinstall <<EOF
|
|
getent group arangodb >/dev/null || groupadd -r arangodb
|
|
getent passwd arangodb >/dev/null || useradd -r -g arangodb -d ${static_dir}/arangodb -s /bin/false -c "ArangoDB Application User" arangodb
|
|
EOF
|
|
%endif
|
|
|
|
## -----------------------------------------------------------------------------
|
|
## CHKCONF
|
|
## -----------------------------------------------------------------------------
|
|
|
|
%ifdef chkconf
|
|
f 0755 ${rusr} ${rgrp} ${initdir}/arangodb ${project_dir}/Installation/Linux/${START_SCRIPT}
|
|
|
|
%postinstall <<EOF
|
|
chkconfig --level ${runlevels} arangodb on
|
|
|
|
if [ "`find ${data_dir}/arangodb -type d -name 'collection-*'`" == "" ] ; then
|
|
${bindir}/arango-upgrade --database.directory "${data_dir}/arangodb" --uid ${susr}
|
|
fi
|
|
|
|
exit 0
|
|
EOF
|
|
|
|
%preremove <<EOF
|
|
${initdir}/arangodb stop 2&>1 > /dev/null || true
|
|
chkconfig --del arangodb
|
|
exit 0
|
|
EOF
|
|
|
|
## -----------------------------------------------------------------------------
|
|
## INSSERV
|
|
## -----------------------------------------------------------------------------
|
|
|
|
%elseifdef insserv
|
|
f 0755 ${rusr} ${rgrp} ${initdir}/arangodb ${project_dir}/Installation/Linux/${START_SCRIPT}
|
|
|
|
%postinstall <<EOF
|
|
test -x /sbin/insserv && /sbin/insserv /etc/init.d/arangodb 2&>1 > /dev/null
|
|
|
|
if [ "`find ${data_dir}/arangodb -type d -name 'collection-*'`" == "" ] ; then
|
|
${bindir}/arango-upgrade --database.directory "${data_dir}/arangodb" --uid ${susr}
|
|
fi
|
|
|
|
exit 0
|
|
EOF
|
|
|
|
%preremove <<EOF
|
|
${initdir}/arangodb stop 2&>1 > /dev/null || true
|
|
test -x /sbin/insserv && /sbin/insserv -r /etc/init.d/arangodb 2&>1 > /dev/null
|
|
exit 0
|
|
EOF
|
|
|
|
## -----------------------------------------------------------------------------
|
|
## EPM
|
|
## -----------------------------------------------------------------------------
|
|
|
|
%else
|
|
|
|
%system linux
|
|
i 0755 ${rusr} ${rgrp} arangodb ${project_dir}/Installation/Linux/${START_SCRIPT} runlevel(${runlevels})
|
|
|
|
%endif
|
|
|
|
## -----------------------------------------------------------------------------
|
|
## RC skript
|
|
## -----------------------------------------------------------------------------
|
|
|
|
%system linux
|
|
l 000 ${rusr} ${rgrp} ${sbindir}/rcarangodb /etc/init.d/arangodb
|