From a712dc92423a31a4d3ab34fe660df550feebf442 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 13 Sep 2011 23:14:39 +0000 Subject: Tue Sep 13 23:14:39 UTC 2011 --- community-testing/mongodb/PKGBUILD | 52 +++++++++++++++++++++++++++++++ community-testing/mongodb/mongodb.conf | 8 +++++ community-testing/mongodb/mongodb.install | 32 +++++++++++++++++++ community-testing/mongodb/mongodb.rc | 39 +++++++++++++++++++++++ 4 files changed, 131 insertions(+) create mode 100644 community-testing/mongodb/PKGBUILD create mode 100644 community-testing/mongodb/mongodb.conf create mode 100755 community-testing/mongodb/mongodb.install create mode 100755 community-testing/mongodb/mongodb.rc (limited to 'community-testing/mongodb') diff --git a/community-testing/mongodb/PKGBUILD b/community-testing/mongodb/PKGBUILD new file mode 100644 index 000000000..22c2e27d1 --- /dev/null +++ b/community-testing/mongodb/PKGBUILD @@ -0,0 +1,52 @@ +# Maintainer: Thomas Dziedzic < gostrc at gmail > +# Contributor: Mathias Stearn +# Contributor: Alec Thomas + +pkgname=mongodb +pkgver=2.0.0 +pkgrel=1 +pkgdesc='A high-performance, open source, schema-free document-oriented database.' +arch=('i686' 'x86_64') +url='http://www.mongodb.org' +license=('AGPL3') +depends=('boost-libs') +makedepends=('scons' 'boost') +optdepends=('libpcap: needed for mongosniff') +backup=('etc/mongodb.conf') +install="mongodb.install" +source=("http://downloads.mongodb.org/src/mongodb-src-r${pkgver}.tar.gz" + 'mongodb.rc' + 'mongodb.conf') +md5sums=('52763985c13e06d85bc125c7d3eb03d9' + '9c67e00f4626ad761a8f7d4e037a54d7' + '4839fe1d638187ca3226e8267b947318') + +build() { + export SCONSFLAGS="$MAKEFLAGS" + + cd mongodb-src-r${pkgver} + + scons \ + all \ + --full +} + +package() { + cd mongodb-src-r${pkgver} + + scons \ + install \ + --full \ + --prefix=${pkgdir}/usr + + install -D -m755 ${srcdir}/mongodb.rc \ + ${pkgdir}/etc/rc.d/mongodb + install -D -m644 ${srcdir}/mongodb.conf \ + ${pkgdir}/etc/mongodb.conf + install -d -m700 ${pkgdir}/var/lib/mongodb + install -d -m755 ${pkgdir}/var/log/mongodb + + if [ -d ${pkgdir}/usr/lib64 ]; then + mv ${pkgdir}/usr/lib64 ${pkgdir}/usr/lib + fi +} diff --git a/community-testing/mongodb/mongodb.conf b/community-testing/mongodb/mongodb.conf new file mode 100644 index 000000000..c5272b7f2 --- /dev/null +++ b/community-testing/mongodb/mongodb.conf @@ -0,0 +1,8 @@ +# See http://www.mongodb.org/display/DOCS/File+Based+Configuration for format details +# Run mongod --help to see a list of options + +bind_ip = 127.0.0.1 +quiet = true +dbpath = /var/lib/mongodb +logpath = /var/log/mongodb/mongod.log +logappend = true diff --git a/community-testing/mongodb/mongodb.install b/community-testing/mongodb/mongodb.install new file mode 100755 index 000000000..3922c12ef --- /dev/null +++ b/community-testing/mongodb/mongodb.install @@ -0,0 +1,32 @@ +# vim: syntax=sh + +post_install() { + useradd -r -g daemon -d /var/lib/mongodb -s /bin/bash mongodb + chown -R mongodb:daemon /var/lib/mongodb + chown -R mongodb:daemon /var/log/mongodb + + if [ "$(arch)" != "x86_64" ] + then + echo '==> Warning: the 32 bit version of MongoDB is limited to about 2GB of data.' + echo '==> See http://blog.mongodb.org/post/137788967/32-bit-limitations' + fi +} + +post_upgrade() { + chown -R mongodb:daemon /var/lib/mongodb + chown -R mongodb:daemon /var/log/mongodb + + if [ "$(vercmp $2 1.8.2-3)" -lt 0 ] + then + # have to fix my fudge up in 1.8.2-2 and 1.8.2-3 + # added july 5th, 2011 + usermod -s /bin/bash mongodb >& /dev/null + echo 'The dbpath has changed from /var/state/mongodb to /var/lib/mongodb' + echo 'Make sure you move your data files to the new dbpath before you start/restart mongodb' + echo 'The logpath has changed from /var/log/mongod to /var/log/mongodb/mongod.log' + fi +} + +pre_remove() { + userdel mongodb +} diff --git a/community-testing/mongodb/mongodb.rc b/community-testing/mongodb/mongodb.rc new file mode 100755 index 000000000..30f2bbf79 --- /dev/null +++ b/community-testing/mongodb/mongodb.rc @@ -0,0 +1,39 @@ +#!/bin/bash +# vim: syntax=sh + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=$(pidof /usr/bin/mongod) +case "$1" in + start) + stat_busy "Starting mongodb" + [ -z "$PID" ] && /bin/su mongodb -c "/usr/bin/mongod --config /etc/mongodb.conf --fork" > /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon mongodb + stat_done + fi + ;; + stop) + stat_busy "Stopping mongodb" + [ ! -z "$PID" ] && /bin/su mongodb -c "/usr/bin/mongod --config /etc/mongodb.conf --shutdown" &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon mongodb + while [ ! -z "$(pidof /usr/bin/mongod)" ]; do + sleep 1; + done + stat_done + fi + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 -- cgit v1.2.3-54-g00ecf