diff options
-rw-r--r-- | sysutils/Makefile | 1 | ||||
-rw-r--r-- | sysutils/moosefs-master/Makefile | 55 | ||||
-rw-r--r-- | sysutils/moosefs-master/distinfo | 3 | ||||
-rw-r--r-- | sysutils/moosefs-master/files/mfscgiserv.in | 35 | ||||
-rw-r--r-- | sysutils/moosefs-master/files/mfsmaster.in | 35 | ||||
-rw-r--r-- | sysutils/moosefs-master/files/mfsmetalogger.in | 36 | ||||
-rw-r--r-- | sysutils/moosefs-master/files/pkg-deinstall.in | 14 | ||||
-rw-r--r-- | sysutils/moosefs-master/files/pkg-install.in | 37 | ||||
-rw-r--r-- | sysutils/moosefs-master/files/pkg-message.in | 17 | ||||
-rw-r--r-- | sysutils/moosefs-master/pkg-descr | 9 | ||||
-rw-r--r-- | sysutils/moosefs-master/pkg-plist | 21 |
11 files changed, 263 insertions, 0 deletions
diff --git a/sysutils/Makefile b/sysutils/Makefile index 9dd9ca1eac6f..6aeb40003dcb 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -495,6 +495,7 @@ SUBDIR += monitord SUBDIR += monkeytail SUBDIR += mono-kmod + SUBDIR += moosefs-master SUBDIR += moreutils SUBDIR += most SUBDIR += mount.app diff --git a/sysutils/moosefs-master/Makefile b/sysutils/moosefs-master/Makefile new file mode 100644 index 000000000000..4533a1ba4e9f --- /dev/null +++ b/sysutils/moosefs-master/Makefile @@ -0,0 +1,55 @@ +# New ports collection makefile for: moosefs-master +# Date created: 1 April 2010 +# Whom: Chifeng Qu <chifeng@gmail.com> +# +# $FreeBSD$ +# + +PORTNAME= moosefs +PORTVERSION= 1.6.14 +CATEGORIES= sysutils +MASTER_SITES= SF/moosefs/moosefs/${PORTVERSION}/ +PKGNAMESUFFIX= -master +DISTNAME= mfs-${PORTVERSION} + +MAINTAINER= chifeng@gmail.com +COMMENT= Managing the whole filesystem and storing metadata + +USE_PYTHON= 2.5+ + +GNU_CONFIGURE= yes +USE_RC_SUBR+= mfsmaster mfsmetalogger mfscgiserv +MFS_WORKDIR= /var +MFS_CGIDIR= ${PREFIX}/share/mfscgi +SUB_FILES+= pkg-install pkg-message pkg-deinstall +SUB_LIST+= MFS_WORKDIR="${MFS_WORKDIR}" + +CONFIGURE_ARGS+= --localstatedir=${MFS_WORKDIR} \ + --enable-mfsmaster \ + --with-mfscgiserv-dir=${PREFIX}/sbin \ + --enable-mfscgiserv \ + --enable-mfscgi \ + --with-mfscgi-dir=${MFS_CGIDIR} \ + --disable-mfschunkserver \ + --disable-mfsmount + +MAN5= mfsmaster.cfg.5 mfsexports.cfg.5 mfsmetalogger.cfg.5 +MAN7= moosefs.7 mfs.7 +MAN8= mfsmaster.8 mfsmetarestore.8 mfsmetalogger.8 + +.include <bsd.port.pre.mk> + +pre-install: + ${MKDIR} ${MFS_CGIDIR} + +post-install: +.for FILE in mfsmaster mfsexports mfsmetalogger + @if [ ! -f ${PREFIX}/etc/${i}.cfg ]; then \ + ${CP} ${PREFIX}/etc/${FILE}.cfg.dist ${PREFIX}/etc/${FILE}.cfg ; \ + fi +.endfor + + PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL + @${CAT} ${PKGMESSAGE} + +.include <bsd.port.post.mk> diff --git a/sysutils/moosefs-master/distinfo b/sysutils/moosefs-master/distinfo new file mode 100644 index 000000000000..ba8b366a3794 --- /dev/null +++ b/sysutils/moosefs-master/distinfo @@ -0,0 +1,3 @@ +MD5 (mfs-1.6.14.tar.gz) = 746e742011f6ada5ec64152c4fd2ddbd +SHA256 (mfs-1.6.14.tar.gz) = 8c29a71d391cb77e528459aced3f12bdbff813baed2a43461c3e1818f2492411 +SIZE (mfs-1.6.14.tar.gz) = 641406 diff --git a/sysutils/moosefs-master/files/mfscgiserv.in b/sysutils/moosefs-master/files/mfscgiserv.in new file mode 100644 index 000000000000..b5d5657761e3 --- /dev/null +++ b/sysutils/moosefs-master/files/mfscgiserv.in @@ -0,0 +1,35 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: mfscgiserv +# REQUIRE: LOGIN +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf or /etc/rc.conf.local to enable mfscgiserv: +# +# mfscgiserv_enable="YES" +# + +. /etc/rc.subr + +name=mfscgiserv +rcvar=`set_rcvar` + +command=%%PREFIX%%/sbin/mfscgiserv + +stop_postcmd=stop_postcmd + +stop_postcmd() +{ + rm -f $pidfile +} + +# set defaults +mfscgiserv_enable=${mfscgiserv_enable:-"NO"} +procname="python" + +load_rc_config $name +run_rc_command "$1" diff --git a/sysutils/moosefs-master/files/mfsmaster.in b/sysutils/moosefs-master/files/mfsmaster.in new file mode 100644 index 000000000000..35f5e8dcb0f7 --- /dev/null +++ b/sysutils/moosefs-master/files/mfsmaster.in @@ -0,0 +1,35 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: mfsmaster +# REQUIRE: LOGIN +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf to enable mfsmaster: +# +# mfsmaster_enable="YES" +# + +. /etc/rc.subr + +name=mfsmaster +rcvar=`set_rcvar` + +command=%%PREFIX%%/sbin/${name} + +stop_postcmd=stop_postcmd + +stop_postcmd() +{ + rm -f $pidfile +} + +# set defaults +mfsmaster_enable=${mfsmaster_enable:-"NO"} +mfsmaster_flags=${mfsmaster_flags:-"-c %%PREFIX%%/etc/mfsmaster.cfg"} + +load_rc_config $name +run_rc_command "$1" diff --git a/sysutils/moosefs-master/files/mfsmetalogger.in b/sysutils/moosefs-master/files/mfsmetalogger.in new file mode 100644 index 000000000000..9e6ff081b4dd --- /dev/null +++ b/sysutils/moosefs-master/files/mfsmetalogger.in @@ -0,0 +1,36 @@ +#!/bin/sh + +# $FreeBSD$ +# +# PROVIDE: mfsmetalogger +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# mfsmetalogger_enable (bool): Set to NO by default. +# Set it to YES to enable doormand. +# mfsmetalogger_config (path): Set to %%PREFIX%%/etc/mfsmetalogger.cfg +# by default. +# + +. /etc/rc.subr + +name="mfsmetalogger" +rcvar=${name}_enable + +command=%%PREFIX%%/sbin/${name} +#pidfile=/var/run/${name}.pid +config_file=%%PREFIX%%/etc/${name}.cfg + +load_rc_config $name + +: ${mfsmetalogger_enable="NO"} +: ${mfsmetalogger_config="%%PREFIX%%/etcaster"} + +#command_args="-p $pidfile -f $doormand_config" +command_args="-c $config_file" + +run_rc_command "$1" + diff --git a/sysutils/moosefs-master/files/pkg-deinstall.in b/sysutils/moosefs-master/files/pkg-deinstall.in new file mode 100644 index 000000000000..edced14d2337 --- /dev/null +++ b/sysutils/moosefs-master/files/pkg-deinstall.in @@ -0,0 +1,14 @@ +#!/bin/sh +# $FreeBSD$ + +PATH="/bin:/sbin:/usr/bin:/usr/sbin" + +WORKFILE=%%MFS_WORKDIR%%/mfs/metadata.mfs.empty +WORKDIR=%%MFS_WORKDIR%%/mfs + +if [ "$2" = "POST-DEINSTALL" ]; then + echo "=> Deleting ${WORKFILE} if empty..." + rm -f ${WORKFILE} 2>/dev/null || true + echo "=> Deleting ${WORKDIR} if empty..." + rm -d ${WORKDIR} 2>/dev/null || true +fi diff --git a/sysutils/moosefs-master/files/pkg-install.in b/sysutils/moosefs-master/files/pkg-install.in new file mode 100644 index 000000000000..99a254a25607 --- /dev/null +++ b/sysutils/moosefs-master/files/pkg-install.in @@ -0,0 +1,37 @@ +#!/bin/sh + +PATH=/bin:/usr/sbin + +if [ "$2" != "PRE-INSTALL" ]; then + exit 0 +fi + + USER=mfs + GROUP=${USER} + UID=925 + GID=${UID} + + if pw group show "${GROUP}" 2>/dev/null; then + echo "You already have a group \"${GROUP}\", so I will use it." + else + if pw groupadd ${GROUP} -g ${GID}; then + echo "Added group \"${GROUP}\"." + else + echo "Adding group \"${GROUP}\" failed..." + exit 1 + fi + fi + + if pw user show "${USER}" 2>/dev/null; then + echo "You already have a user \"${USER}\", so I will use it." + else + if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \ + -d /nonexistent -s /sbin/nologin -c "MySQL Daemon" + then + echo "Added user \"${USER}\"." + else + echo "Adding user \"${USER}\" failed..." + exit 1 + fi + fi +exit 0 diff --git a/sysutils/moosefs-master/files/pkg-message.in b/sysutils/moosefs-master/files/pkg-message.in new file mode 100644 index 000000000000..723f7271cf27 --- /dev/null +++ b/sysutils/moosefs-master/files/pkg-message.in @@ -0,0 +1,17 @@ +************************************************************************ + +Three startup scripts has been installed as: + +%%PREFIX%%/etc/rc.d/mfsmaster +%%PREFIX%%/etc/rc.d/mfsmetalogger +%%PREFIX%%/etc/rc.d/mfscgiserv + +Use it to start/stop the mfsmaster, mfsmetalogge and mfschunkserver +services after you have added the following line to your rc.conf +file respectively: + +mfsmaster_enable="YES" +mfsmetalogger_enable="YES" +mfscgiserv_enable="YES" + +************************************************************************ diff --git a/sysutils/moosefs-master/pkg-descr b/sysutils/moosefs-master/pkg-descr new file mode 100644 index 000000000000..ddbd7a3eebe9 --- /dev/null +++ b/sysutils/moosefs-master/pkg-descr @@ -0,0 +1,9 @@ +MooseFS is a fault tolerant, network distributed file system. + +mfsmaster is a single machine managing the whole filesystem, +storing metadata for every file (information on size, +attributes and file location(s), including all information +about non-regular files, i.e. directories, sockets, pipes and +devices). + +WWW: http://www.moosefs.org/ diff --git a/sysutils/moosefs-master/pkg-plist b/sysutils/moosefs-master/pkg-plist new file mode 100644 index 000000000000..74a09d2e0b5f --- /dev/null +++ b/sysutils/moosefs-master/pkg-plist @@ -0,0 +1,21 @@ +@exec if [ ! -f %D/etc/mfsmaster.cfg ]; then /bin/cp %D/etc/mfsmaster.cfg.dist %D/etc/mfsmaster.cfg; fi +@exec if [ ! -f %D/etc/mfsexports.cfg ]; then /bin/cp %D/etc/mfsexports.cfg.dist %D/etc/mfsexports.cfg; fi +@exec if [ ! -f %D/etc/mfsmetalogger.cfg ]; then /bin/cp %D/etc/mfsmetalogger.cfg.dist %D/etc/mfsmetalogger.cfg; fi +@unexec if cmp -s %D/etc/mfsmaster.cfg.dist %D/etc/mfsmaster.cfg; then rm -f %D/etc/mfsmaster.cfg; fi +@unexec if cmp -s %D/etc/mfsexports.cfg.dist %D/etc/mfsexports.cfg; then rm -f %D/etc/mfsexports.cfg; fi +@unexec if cmp -s %D/etc/mfsmetalogger.cfg.dist %D/etc/mfsmetalogger.cfg; then rm -f %D/etc/mfsmetalogger.cfg; fi +etc/mfsmaster.cfg.dist +etc/mfsexports.cfg.dist +etc/mfsmetalogger.cfg.dist +sbin/mfscgiserv +sbin/mfsmaster +sbin/mfsmetarestore +sbin/mfsmetadump +sbin/mfsmetalogger +share/mfscgi/mfs.cgi +share/mfscgi/mfs.css +share/mfscgi/logomini.png +share/mfscgi/index.html +share/mfscgi/err.gif +share/mfscgi/chart.cgi +@dirrm share/mfscgi |