aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sysutils/Makefile1
-rw-r--r--sysutils/moosefs-master/Makefile55
-rw-r--r--sysutils/moosefs-master/distinfo3
-rw-r--r--sysutils/moosefs-master/files/mfscgiserv.in35
-rw-r--r--sysutils/moosefs-master/files/mfsmaster.in35
-rw-r--r--sysutils/moosefs-master/files/mfsmetalogger.in36
-rw-r--r--sysutils/moosefs-master/files/pkg-deinstall.in14
-rw-r--r--sysutils/moosefs-master/files/pkg-install.in37
-rw-r--r--sysutils/moosefs-master/files/pkg-message.in17
-rw-r--r--sysutils/moosefs-master/pkg-descr9
-rw-r--r--sysutils/moosefs-master/pkg-plist21
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