summaryrefslogtreecommitdiff
path: root/filesystems/moosefs2-master
diff options
context:
space:
mode:
authorRobert Clausecker <fuz@FreeBSD.org>2024-09-27 12:48:46 +0200
committerRobert Clausecker <fuz@FreeBSD.org>2024-11-06 16:17:35 +0100
commit6e2da9672f79f44048d597f0f61e4646cdeade9d (patch)
treec92e4b3158e3419e8cec38e00227d08dcdaab3e9 /filesystems/moosefs2-master
parentmath/sdpa: speed up build (diff)
filesystems: add new category for file systems and related utilities
The filesystems category houses file systems and file system utilities. It is added mainly to turn the sysutils/fusefs-* pseudo-category into a proper one, but is also useful for the sundry of other file systems related ports found in the tree. Ports that seem like they belong there are moved to the new category. Two ports, sysutils/fusefs-funionfs and sysutils/fusefs-fusepak are not moved as they currently don't fetch and don't have TIMESTAMP set in their distinfo, but that is required to be able to push a rename of the port by the pre-receive hook. Approved by: portmgr (rene) Reviewed by: mat Pull Request: https://github.com/freebsd/freebsd-ports/pull/302 PR: 281988
Diffstat (limited to 'filesystems/moosefs2-master')
-rw-r--r--filesystems/moosefs2-master/Makefile107
-rw-r--r--filesystems/moosefs2-master/distinfo3
-rw-r--r--filesystems/moosefs2-master/files/mfscgiserv.in29
-rw-r--r--filesystems/moosefs2-master/files/mfschunkserver.in30
-rw-r--r--filesystems/moosefs2-master/files/mfsmaster.in30
-rw-r--r--filesystems/moosefs2-master/files/mfsmetalogger.in30
-rw-r--r--filesystems/moosefs2-master/files/patch-mfsdata_Makefile.in30
-rw-r--r--filesystems/moosefs2-master/files/pkg-message-cgiserv.in14
-rw-r--r--filesystems/moosefs2-master/files/pkg-message-chunkserver.in14
-rw-r--r--filesystems/moosefs2-master/files/pkg-message-master.in14
-rw-r--r--filesystems/moosefs2-master/files/pkg-message-metalogger.in14
-rw-r--r--filesystems/moosefs2-master/pkg-descr7
-rw-r--r--filesystems/moosefs2-master/pkg-plist16
13 files changed, 338 insertions, 0 deletions
diff --git a/filesystems/moosefs2-master/Makefile b/filesystems/moosefs2-master/Makefile
new file mode 100644
index 000000000000..f71b0645904f
--- /dev/null
+++ b/filesystems/moosefs2-master/Makefile
@@ -0,0 +1,107 @@
+PORTNAME= moosefs2
+PORTVERSION= 2.0.91
+PORTREVISION= 1
+CATEGORIES= filesystems sysutils
+MASTER_SITES= http://ppa.moosefs.com/src/
+PKGNAMESUFFIX?= -master
+DISTNAME= moosefs-${PORTVERSION}-1
+
+MAINTAINER= freebsd@moosefs.com
+COMMENT?= Fault-tolerant distributed filesystem
+WWW= https://moosefs.com/
+
+LICENSE= GPLv2
+
+USES= python:build
+GNU_CONFIGURE= yes
+GNU_CONFIGURE_MANPREFIX=${PREFIX}/share
+WRKSRC= ${WRKDIR}/moosefs-${PORTVERSION}
+PLIST= ${.CURDIR}/pkg-plist
+DESCR= ${.CURDIR}/pkg-descr
+
+MFS_COMPONENT?= master
+MFS_USER= mfs
+MFS_GROUP= mfs
+MFS_WORKDIR= /var
+
+USERS= ${MFS_USER}
+GROUPS= ${MFS_GROUP}
+
+CONFIGURE_ARGS+= --localstatedir=${MFS_WORKDIR} \
+ --with-default-user=${MFS_USER} \
+ --with-default-group=${MFS_GROUP} \
+
+.if ${MFS_COMPONENT} == cgi
+MFS_CGIDIR= ${PREFIX}/share/mfscgi
+USES= python
+CONFIGURE_ARGS+= --enable-mfscgi \
+ --with-mfscgi-dir=${MFS_CGIDIR}
+.else
+CONFIGURE_ARGS+= --disable-mfscgi
+.endif
+
+.if ${MFS_COMPONENT} == cgiserv
+MFS_CGISERVDIR= ${PREFIX}/sbin
+USES= python
+USE_RC_SUBR= mfscgiserv
+SUB_FILES+= pkg-message-cgiserv
+PKGMESSAGE= ${WRKDIR}/pkg-message-cgiserv
+PLIST_SUB+= MFS_WORKDIR="${MFS_WORKDIR}"
+CONFIGURE_ARGS+= --enable-mfscgiserv \
+ --with-mfscgiserv-dir=${MFS_CGISERVDIR}
+RUN_DEPENDS= moosefs2-cgi>0:filesystems/moosefs2-cgi
+.else
+CONFIGURE_ARGS+= --disable-mfscgiserv
+.endif
+
+.if ${MFS_COMPONENT} == chunkserver
+USE_RC_SUBR= mfschunkserver
+SUB_FILES+= pkg-message-chunkserver
+PKGMESSAGE= ${WRKDIR}/pkg-message-chunkserver
+PLIST_SUB+= MFS_WORKDIR="${MFS_WORKDIR}"
+CONFIGURE_ARGS+= --enable-mfschunkserver
+.else
+CONFIGURE_ARGS+= --disable-mfschunkserver
+.endif
+
+.if ${MFS_COMPONENT} == cli
+USES= python
+CONFIGURE_ARGS+= --enable-mfscli
+.else
+CONFIGURE_ARGS+= --disable-mfscli
+.endif
+
+.if ${MFS_COMPONENT} == client
+USES= compiler:c11 fuse pkgconfig
+CONFIGURE_ARGS+= --enable-mfsmount
+.else
+CONFIGURE_ARGS+= --disable-mfsmount
+.endif
+
+.if ${MFS_COMPONENT} == master
+USE_RC_SUBR= mfsmaster
+PLIST_SUB+= MFS_WORKDIR="${MFS_WORKDIR}"
+SUB_FILES+= pkg-message-master
+PKGMESSAGE= ${WRKDIR}/pkg-message-master
+CONFIGURE_ARGS+= --enable-mfsmaster
+.else
+CONFIGURE_ARGS+= --disable-mfsmaster
+.endif
+
+.if ${MFS_COMPONENT} == metalogger
+USE_RC_SUBR= mfsmetalogger
+SUB_FILES+= pkg-message-metalogger
+PKGMESSAGE= ${WRKDIR}/pkg-message-metalogger
+PLIST_SUB+= MFS_WORKDIR="${MFS_WORKDIR}"
+CONFIGURE_ARGS+= --enable-mfsmetalogger
+.else
+CONFIGURE_ARGS+= --disable-mfsmetalogger
+.endif
+
+.if ${MFS_COMPONENT} == netdump
+CONFIGURE_ARGS+= --enable-mfsnetdump
+.else
+CONFIGURE_ARGS+= --disable-mfsnetdump
+.endif
+
+.include <bsd.port.mk>
diff --git a/filesystems/moosefs2-master/distinfo b/filesystems/moosefs2-master/distinfo
new file mode 100644
index 000000000000..967bb6ec0f40
--- /dev/null
+++ b/filesystems/moosefs2-master/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1475264147
+SHA256 (moosefs-2.0.91-1.tar.gz) = c63c578b06395e913a163c2076effe39d3fd66b09caff6b23f6303d4a22fe249
+SIZE (moosefs-2.0.91-1.tar.gz) = 970133
diff --git a/filesystems/moosefs2-master/files/mfscgiserv.in b/filesystems/moosefs2-master/files/mfscgiserv.in
new file mode 100644
index 000000000000..39f9f59ddb6d
--- /dev/null
+++ b/filesystems/moosefs2-master/files/mfscgiserv.in
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+# PROVIDE: mfscgiserv
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf to enable mfscgiserv:
+#
+# mfscgiserv_enable="YES"
+#
+
+. /etc/rc.subr
+
+name=mfscgiserv
+rcvar=mfscgiserv_enable
+
+command=%%PREFIX%%/sbin/${name}
+pid_file=%%MFS_WORKDIR%%/mfs/.${name}.lock
+procname="python"
+
+stop_cmd="$command stop"
+status_cmd="$command test"
+
+load_rc_config $name
+
+# set defaults
+: ${mfscgiserv_enable="NO"}
+
+run_rc_command "$1"
diff --git a/filesystems/moosefs2-master/files/mfschunkserver.in b/filesystems/moosefs2-master/files/mfschunkserver.in
new file mode 100644
index 000000000000..3083fe91b543
--- /dev/null
+++ b/filesystems/moosefs2-master/files/mfschunkserver.in
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# PROVIDE: mfschunkserver
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf to enable mfschunkserver:
+#
+# mfschunkserver_enable="YES"
+#
+
+. /etc/rc.subr
+
+name=mfschunkserver
+rcvar=mfschunkserver_enable
+
+config_file=%%PREFIX%%/etc/mfs/${name}.cfg
+
+required_files=${config_file}
+
+command=%%PREFIX%%/sbin/${name}
+pid_file=%%MFS_WORKDIR%%/mfs/.${name}.lock
+command_args="-c $config_file"
+
+load_rc_config $name
+
+# set defaults
+: ${mfschunkserver_enable="NO"}
+
+run_rc_command "$1"
diff --git a/filesystems/moosefs2-master/files/mfsmaster.in b/filesystems/moosefs2-master/files/mfsmaster.in
new file mode 100644
index 000000000000..a551d441c5b1
--- /dev/null
+++ b/filesystems/moosefs2-master/files/mfsmaster.in
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# PROVIDE: mfsmaster
+# REQUIRE: DAEMON
+# KEYWORD: nostart shutdown
+#
+# Add the following lines to /etc/rc.conf to enable mfsmaster:
+#
+# mfsmaster_enable="YES"
+#
+
+. /etc/rc.subr
+
+name=mfsmaster
+rcvar=mfsmaster_enable
+
+config_file=%%PREFIX%%/etc/mfs/${name}.cfg
+
+required_files=${config_file}
+
+command=%%PREFIX%%/sbin/${name}
+pid_file=%%MFS_WORKDIR%%/mfs/.${name}.lock
+command_args="-c $config_file"
+
+load_rc_config $name
+
+# set defaults
+: ${mfsmaster_enable="NO"}
+
+run_rc_command "$1"
diff --git a/filesystems/moosefs2-master/files/mfsmetalogger.in b/filesystems/moosefs2-master/files/mfsmetalogger.in
new file mode 100644
index 000000000000..994a1a69f4ec
--- /dev/null
+++ b/filesystems/moosefs2-master/files/mfsmetalogger.in
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# PROVIDE: mfsmetalogger
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf to enable mfsmetalogger:
+#
+# mfsmetalogger_enable="YES"
+#
+
+. /etc/rc.subr
+
+name=mfsmetalogger
+rcvar=mfsmetalogger_enable
+
+config_file=%%PREFIX%%/etc/mfs/${name}.cfg
+
+required_files=${config_file}
+
+command=%%PREFIX%%/sbin/${name}
+pid_file=%%MFS_WORKDIR%%/mfs/.${name}.lock
+command_args="-c $config_file"
+
+load_rc_config $name
+
+# set defaults
+: ${mfsmetalogger_enable="NO"}
+
+run_rc_command "$1"
diff --git a/filesystems/moosefs2-master/files/patch-mfsdata_Makefile.in b/filesystems/moosefs2-master/files/patch-mfsdata_Makefile.in
new file mode 100644
index 000000000000..ac1bd4685b43
--- /dev/null
+++ b/filesystems/moosefs2-master/files/patch-mfsdata_Makefile.in
@@ -0,0 +1,30 @@
+--- mfsdata/Makefile.in.orig 2015-08-12 14:50:32 UTC
++++ mfsdata/Makefile.in
+@@ -504,11 +504,11 @@ install-data-hook:
+ @CREATE_DATA_DIR_TRUE@ fi ; \
+ @CREATE_DATA_DIR_TRUE@ fi ; \
+ @CREATE_DATA_DIR_TRUE@ fi
+-@BUILD_CHUNKSERVER_TRUE@ $(INSTALL_DATA) $(builddir)/mfschunkserver.cfg $(DESTDIR)$(sysconfdir)/mfs/mfschunkserver.cfg.dist
+-@BUILD_CHUNKSERVER_TRUE@ $(INSTALL_DATA) $(srcdir)/mfshdd.cfg $(DESTDIR)$(sysconfdir)/mfs/mfshdd.cfg.dist
+-@BUILD_MASTER_TRUE@ $(INSTALL_DATA) $(builddir)/mfsmaster.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsmaster.cfg.dist
+-@BUILD_MASTER_TRUE@ $(INSTALL_DATA) $(builddir)/mfsexports.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsexports.cfg.dist
+-@BUILD_MASTER_TRUE@ $(INSTALL_DATA) $(builddir)/mfstopology.cfg $(DESTDIR)$(sysconfdir)/mfs/mfstopology.cfg.dist
++@BUILD_CHUNKSERVER_TRUE@ $(INSTALL_DATA) $(builddir)/mfschunkserver.cfg $(DESTDIR)$(sysconfdir)/mfs/mfschunkserver.cfg.sample
++@BUILD_CHUNKSERVER_TRUE@ $(INSTALL_DATA) $(srcdir)/mfshdd.cfg $(DESTDIR)$(sysconfdir)/mfs/mfshdd.cfg.sample
++@BUILD_MASTER_TRUE@ $(INSTALL_DATA) $(builddir)/mfsmaster.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsmaster.cfg.sample
++@BUILD_MASTER_TRUE@ $(INSTALL_DATA) $(builddir)/mfsexports.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsexports.cfg.sample
++@BUILD_MASTER_TRUE@ $(INSTALL_DATA) $(builddir)/mfstopology.cfg $(DESTDIR)$(sysconfdir)/mfs/mfstopology.cfg.sample
+ @BUILD_MASTER_TRUE@ $(INSTALL_DATA) $(srcdir)/metadata.mfs $(DESTDIR)$(DATA_PATH)/metadata.mfs.empty
+ @BUILD_MASTER_TRUE@ if [ "`id -u`" = "0" ]; then \
+ @BUILD_MASTER_TRUE@ if id -u $(DEFAULT_USER) 2> /dev/null > /dev/null ; then \
+@@ -517,8 +517,8 @@ install-data-hook:
+ @BUILD_MASTER_TRUE@ fi ; \
+ @BUILD_MASTER_TRUE@ fi ; \
+ @BUILD_MASTER_TRUE@ fi
+-@BUILD_MOUNT_TRUE@ $(INSTALL_DATA) $(builddir)/mfsmount.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsmount.cfg.dist
+-@BUILD_METALOGGER_TRUE@ $(INSTALL_DATA) $(builddir)/mfsmetalogger.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsmetalogger.cfg.dist
++@BUILD_MOUNT_TRUE@ $(INSTALL_DATA) $(builddir)/mfsmount.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsmount.cfg.sample
++@BUILD_METALOGGER_TRUE@ $(INSTALL_DATA) $(builddir)/mfsmetalogger.cfg $(DESTDIR)$(sysconfdir)/mfs/mfsmetalogger.cfg.sample
+
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/filesystems/moosefs2-master/files/pkg-message-cgiserv.in b/filesystems/moosefs2-master/files/pkg-message-cgiserv.in
new file mode 100644
index 000000000000..b93e90eb8847
--- /dev/null
+++ b/filesystems/moosefs2-master/files/pkg-message-cgiserv.in
@@ -0,0 +1,14 @@
+[
+{ type: install
+ message: <<EOM
+A startup script has been installed as:
+
+%%PREFIX%%/etc/rc.d/mfscgiserv
+
+Use it to start/stop the mfscgiserv service after you have added
+the following line to your rc.conf file:
+
+mfscgiserv_enable="YES"
+EOM
+}
+]
diff --git a/filesystems/moosefs2-master/files/pkg-message-chunkserver.in b/filesystems/moosefs2-master/files/pkg-message-chunkserver.in
new file mode 100644
index 000000000000..5ad0ee1a4388
--- /dev/null
+++ b/filesystems/moosefs2-master/files/pkg-message-chunkserver.in
@@ -0,0 +1,14 @@
+[
+{ type: install
+ message: <<EOM
+A startup script has been installed as:
+
+%%PREFIX%%/etc/rc.d/mfschunkserver
+
+Use it to start/stop the mfschunkserver service after you have added
+the following line to your rc.conf file:
+
+mfschunkserver_enable="YES"
+EOM
+}
+]
diff --git a/filesystems/moosefs2-master/files/pkg-message-master.in b/filesystems/moosefs2-master/files/pkg-message-master.in
new file mode 100644
index 000000000000..748bcc9eee7a
--- /dev/null
+++ b/filesystems/moosefs2-master/files/pkg-message-master.in
@@ -0,0 +1,14 @@
+[
+{ type: install
+ message: <<EOM
+A startup script has been installed as:
+
+%%PREFIX%%/etc/rc.d/mfsmaster
+
+Use it to start/stop the mfsmaster service after you have added
+the following line to your rc.conf file:
+
+mfsmaster_enable="YES"
+EOM
+}
+]
diff --git a/filesystems/moosefs2-master/files/pkg-message-metalogger.in b/filesystems/moosefs2-master/files/pkg-message-metalogger.in
new file mode 100644
index 000000000000..0a294c00bc0c
--- /dev/null
+++ b/filesystems/moosefs2-master/files/pkg-message-metalogger.in
@@ -0,0 +1,14 @@
+[
+{ type: install
+ message: <<EOM
+A startup script has been installed as:
+
+%%PREFIX%%/etc/rc.d/mfsmetalogger
+
+Use it to start/stop the mfsmetalogger service after you have added
+the following line to your rc.conf file:
+
+mfsmetalogger_enable="YES"
+EOM
+}
+]
diff --git a/filesystems/moosefs2-master/pkg-descr b/filesystems/moosefs2-master/pkg-descr
new file mode 100644
index 000000000000..5a93d68ac286
--- /dev/null
+++ b/filesystems/moosefs2-master/pkg-descr
@@ -0,0 +1,7 @@
+MooseFS is a Fault tolerant, High Available, Highly Performing, Scale-Out,
+network distributed file system. It spreads data over several physical commodity
+servers, which are visible to the user as one resource.
+
+For standard file operations MooseFS acts like any other Unix-like file system.
+
+This port provides: MooseFS master (metadata) server.
diff --git a/filesystems/moosefs2-master/pkg-plist b/filesystems/moosefs2-master/pkg-plist
new file mode 100644
index 000000000000..d750cf15d914
--- /dev/null
+++ b/filesystems/moosefs2-master/pkg-plist
@@ -0,0 +1,16 @@
+@sample etc/mfs/mfsmaster.cfg.sample
+@sample etc/mfs/mfsexports.cfg.sample
+@sample etc/mfs/mfstopology.cfg.sample
+sbin/mfsmaster
+sbin/mfsmetadump
+sbin/mfsmetarestore
+share/man/man5/mfsexports.cfg.5.gz
+share/man/man5/mfsmaster.cfg.5.gz
+share/man/man5/mfstopology.cfg.5.gz
+share/man/man8/mfsmaster.8.gz
+share/man/man8/mfsmetadump.8.gz
+share/man/man8/mfsmetarestore.8.gz
+@owner mfs
+@group mfs
+@dir %%MFS_WORKDIR%%/mfs
+%%MFS_WORKDIR%%/mfs/metadata.mfs.empty