diff --git a/filesystems/moosefs-cgi/Makefile b/filesystems/moosefs-cgi/Makefile new file mode 100644 index 000000000000..7d037c1e09ae --- /dev/null +++ b/filesystems/moosefs-cgi/Makefile @@ -0,0 +1,9 @@ +PKGNAMESUFFIX= -cgi + +COMMENT= MooseFS CGI interface + +MFS_COMPONENT= cgi + +MASTERDIR= ${.CURDIR}/../moosefs3-master + +.include "${MASTERDIR}/Makefile" diff --git a/filesystems/moosefs-cgi/pkg-descr b/filesystems/moosefs-cgi/pkg-descr new file mode 100644 index 000000000000..36025c132006 --- /dev/null +++ b/filesystems/moosefs-cgi/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 CGI monitor. diff --git a/filesystems/moosefs-cgi/pkg-plist b/filesystems/moosefs-cgi/pkg-plist new file mode 100644 index 000000000000..d601df00caac --- /dev/null +++ b/filesystems/moosefs-cgi/pkg-plist @@ -0,0 +1,8 @@ +share/mfscgi/mfs.cgi +share/mfscgi/mfs.css +share/mfscgi/logomini.png +share/mfscgi/index.html +share/mfscgi/err.gif +share/mfscgi/chart.cgi +share/mfscgi/favicon.ico +share/mfscgi/acidtab.js diff --git a/filesystems/moosefs-chunkserver/Makefile b/filesystems/moosefs-chunkserver/Makefile new file mode 100644 index 000000000000..ed032b71ec15 --- /dev/null +++ b/filesystems/moosefs-chunkserver/Makefile @@ -0,0 +1,10 @@ +PORTREVISION= 0 +PKGNAMESUFFIX= -chunkserver + +COMMENT= MooseFS data storage and synchronization component + +MFS_COMPONENT= chunkserver + +MASTERDIR= ${.CURDIR}/../moosefs3-master + +.include "${MASTERDIR}/Makefile" diff --git a/filesystems/moosefs-chunkserver/pkg-descr b/filesystems/moosefs-chunkserver/pkg-descr new file mode 100644 index 000000000000..49022d32fbbc --- /dev/null +++ b/filesystems/moosefs-chunkserver/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 data server. diff --git a/filesystems/moosefs-chunkserver/pkg-plist b/filesystems/moosefs-chunkserver/pkg-plist new file mode 100644 index 000000000000..c255b94a42bd --- /dev/null +++ b/filesystems/moosefs-chunkserver/pkg-plist @@ -0,0 +1,13 @@ +@sample etc/mfs/mfschunkserver.cfg.sample +@sample etc/mfs/mfshdd.cfg.sample +sbin/mfschunkserver +sbin/mfschunktool +sbin/mfscsstatsdump +share/man/man5/mfschunkserver.cfg.5.gz +share/man/man5/mfshdd.cfg.5.gz +share/man/man8/mfschunkserver.8.gz +share/man/man8/mfschunktool.8.gz +share/man/man8/mfscsstatsdump.8.gz +@owner mfs +@group mfs +@dir %%MFS_WORKDIR%%/mfs diff --git a/filesystems/moosefs-cli/Makefile b/filesystems/moosefs-cli/Makefile new file mode 100644 index 000000000000..d8117e352456 --- /dev/null +++ b/filesystems/moosefs-cli/Makefile @@ -0,0 +1,10 @@ +PORTREVISION= 0 +PKGNAMESUFFIX= -cli + +COMMENT= MooseFS command line interface + +MFS_COMPONENT= cli + +MASTERDIR= ${.CURDIR}/../moosefs3-master + +.include "${MASTERDIR}/Makefile" diff --git a/filesystems/moosefs-cli/pkg-descr b/filesystems/moosefs-cli/pkg-descr new file mode 100644 index 000000000000..9b4fd59436bf --- /dev/null +++ b/filesystems/moosefs-cli/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 CLI utilities. diff --git a/filesystems/moosefs-cli/pkg-plist b/filesystems/moosefs-cli/pkg-plist new file mode 100644 index 000000000000..b89b6b5ecf83 --- /dev/null +++ b/filesystems/moosefs-cli/pkg-plist @@ -0,0 +1,2 @@ +bin/mfscli +share/man/man1/mfscli.1.gz diff --git a/filesystems/moosefs-client/Makefile b/filesystems/moosefs-client/Makefile new file mode 100644 index 000000000000..a023f60580c4 --- /dev/null +++ b/filesystems/moosefs-client/Makefile @@ -0,0 +1,10 @@ +PORTREVISION= 0 +PKGNAMESUFFIX= -client + +COMMENT= MooseFS client tools + +MFS_COMPONENT= client + +MASTERDIR= ${.CURDIR}/../moosefs3-master + +.include "${MASTERDIR}/Makefile" diff --git a/filesystems/moosefs-client/pkg-descr b/filesystems/moosefs-client/pkg-descr new file mode 100644 index 000000000000..de72d7e2d737 --- /dev/null +++ b/filesystems/moosefs-client/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 clients: mfsmount and mfstools. diff --git a/filesystems/moosefs-client/pkg-plist b/filesystems/moosefs-client/pkg-plist new file mode 100644 index 000000000000..2dc2199c4f06 --- /dev/null +++ b/filesystems/moosefs-client/pkg-plist @@ -0,0 +1,88 @@ +@sample etc/mfs/mfsmount.cfg.sample +bin/mfsmount +bin/mfsappendchunks +bin/mfscheckfile +bin/mfsdirinfo +bin/mfsfileinfo +bin/mfsfilerepair +bin/mfsmakesnapshot +bin/mfsrmsnapshot +bin/mfsgetgoal +bin/mfssetgoal +bin/mfscopygoal +bin/mfsrgetgoal +bin/mfsrsetgoal +bin/mfsgetsclass +bin/mfssetsclass +bin/mfscopysclass +bin/mfsxchgsclass +bin/mfslistsclass +bin/mfsgettrashtime +bin/mfssettrashtime +bin/mfscopytrashtime +bin/mfsrgettrashtime +bin/mfsrsettrashtime +bin/mfsgeteattr +bin/mfsseteattr +bin/mfsdeleattr +bin/mfscopyeattr +bin/mfsgetquota +bin/mfssetquota +bin/mfsdelquota +bin/mfscopyquota +bin/mfschkarchive +bin/mfsclrarchive +bin/mfssetarchive +bin/mfsfilepaths +bin/mfsscadmin +bin/mfstools +include/mfsio.h +lib/libmfsio.a +lib/libmfsio.so +lib/libmfsio.so.1 +lib/libmfsio.so.1.0.0 +share/man/man1/mfsappendchunks.1.gz +share/man/man1/mfscheckfile.1.gz +share/man/man1/mfsdirinfo.1.gz +share/man/man1/mfsfileinfo.1.gz +share/man/man1/mfsfilerepair.1.gz +share/man/man1/mfsmakesnapshot.1.gz +share/man/man1/mfsrmsnapshot.1.gz +share/man/man1/mfsgetgoal.1.gz +share/man/man1/mfssetgoal.1.gz +share/man/man1/mfscopygoal.1.gz +share/man/man1/mfsrgetgoal.1.gz +share/man/man1/mfsrsetgoal.1.gz +share/man/man1/mfsgetsclass.1.gz +share/man/man1/mfssetsclass.1.gz +share/man/man1/mfscopysclass.1.gz +share/man/man1/mfsxchgsclass.1.gz +share/man/man1/mfslistsclass.1.gz +share/man/man1/mfsgettrashtime.1.gz +share/man/man1/mfssettrashtime.1.gz +share/man/man1/mfscopytrashtime.1.gz +share/man/man1/mfsrgettrashtime.1.gz +share/man/man1/mfsrsettrashtime.1.gz +share/man/man1/mfsgeteattr.1.gz +share/man/man1/mfsseteattr.1.gz +share/man/man1/mfsdeleattr.1.gz +share/man/man1/mfscopyeattr.1.gz +share/man/man1/mfsgetquota.1.gz +share/man/man1/mfssetquota.1.gz +share/man/man1/mfsdelquota.1.gz +share/man/man1/mfscopyquota.1.gz +share/man/man1/mfschkarchive.1.gz +share/man/man1/mfsclrarchive.1.gz +share/man/man1/mfssetarchive.1.gz +share/man/man1/mfsfilepaths.1.gz +share/man/man1/mfsgoal.1.gz +share/man/man1/mfstrashtime.1.gz +share/man/man1/mfseattr.1.gz +share/man/man1/mfsquota.1.gz +share/man/man1/mfsarchive.1.gz +share/man/man1/mfssnapshots.1.gz +share/man/man1/mfsdiagtools.1.gz +share/man/man1/mfssclass.1.gz +share/man/man1/mfsscadmin.1.gz +share/man/man1/mfstools.1.gz +share/man/man8/mfsmount.8.gz diff --git a/filesystems/moosefs-gui/Makefile b/filesystems/moosefs-gui/Makefile new file mode 100644 index 000000000000..896ed1d6ea79 --- /dev/null +++ b/filesystems/moosefs-gui/Makefile @@ -0,0 +1,10 @@ +PORTREVISION= 0 +PKGNAMESUFFIX= -cgiserv + +COMMENT= MooseFS CGI web server + +MFS_COMPONENT= cgiserv + +MASTERDIR= ${.CURDIR}/../moosefs3-master + +.include "${MASTERDIR}/Makefile" diff --git a/filesystems/moosefs-gui/pkg-descr b/filesystems/moosefs-gui/pkg-descr new file mode 100644 index 000000000000..521dda4d677c --- /dev/null +++ b/filesystems/moosefs-gui/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: Simple CGI-capable HTTP server to run MooseFS CGI monitor. diff --git a/filesystems/moosefs-gui/pkg-plist b/filesystems/moosefs-gui/pkg-plist new file mode 100644 index 000000000000..3f3ea8249528 --- /dev/null +++ b/filesystems/moosefs-gui/pkg-plist @@ -0,0 +1,5 @@ +sbin/mfscgiserv +share/man/man8/mfscgiserv.8.gz +@owner mfs +@group mfs +@dir %%MFS_WORKDIR%%/mfs diff --git a/filesystems/moosefs-master/Makefile b/filesystems/moosefs-master/Makefile new file mode 100644 index 000000000000..3ed5bad6a40c --- /dev/null +++ b/filesystems/moosefs-master/Makefile @@ -0,0 +1,114 @@ +PORTNAME= moosefs3 +DISTVERSION= 3.0.118 +DISTVERSIONSUFFIX= 1 +PORTREVISION?= 0 +CATEGORIES= filesystems sysutils +MASTER_SITES= http://ppa.moosefs.com/src/ +PKGNAMESUFFIX?= -master +DISTNAME= moosefs-${DISTVERSION}-${DISTVERSIONSUFFIX} + +MAINTAINER= freebsd@moosefs.com +COMMENT?= Fault-tolerant distributed filesystem +WWW= https://moosefs.com/ + +LICENSE= GPLv2 + +DEPRECATED= 3.x reached EoL 2025-03-31, use filesystems/moosefs-* 4.x instead +EXPIRATION_DATE= 2026-06-30 + +USES= python:build +GNU_CONFIGURE= yes +WRKSRC= ${WRKDIR}/moosefs-${DISTVERSION} +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} + +CONFLICTS= moosefs2-* \ + moosefs-* + +.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= moosefs3-cgi>0:filesystems/moosefs3-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:3 libtool pkgconfig +USE_LDCONFIG= yes +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 diff --git a/filesystems/moosefs-master/distinfo b/filesystems/moosefs-master/distinfo new file mode 100644 index 000000000000..13bed0e547e3 --- /dev/null +++ b/filesystems/moosefs-master/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1770444444 +SHA256 (moosefs-3.0.118-1.tar.gz) = d730c82602b303004dbee2e30c0b013a6ee0ee88e427cee930f4a40bc9241df8 +SIZE (moosefs-3.0.118-1.tar.gz) = 1256430 diff --git a/filesystems/moosefs-master/files/mfscgiserv.in b/filesystems/moosefs-master/files/mfscgiserv.in new file mode 100644 index 000000000000..39f9f59ddb6d --- /dev/null +++ b/filesystems/moosefs-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/moosefs-master/files/mfschunkserver.in b/filesystems/moosefs-master/files/mfschunkserver.in new file mode 100644 index 000000000000..3083fe91b543 --- /dev/null +++ b/filesystems/moosefs-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/moosefs-master/files/mfsmaster.in b/filesystems/moosefs-master/files/mfsmaster.in new file mode 100644 index 000000000000..74056169626f --- /dev/null +++ b/filesystems/moosefs-master/files/mfsmaster.in @@ -0,0 +1,31 @@ +#!/bin/sh + +# PROVIDE: mfsmaster +# REQUIRE: DAEMON +# KEYWORD: nostart shutdown +# BEFORE: mountlate +# +# 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/moosefs-master/files/mfsmetalogger.in b/filesystems/moosefs-master/files/mfsmetalogger.in new file mode 100644 index 000000000000..994a1a69f4ec --- /dev/null +++ b/filesystems/moosefs-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/moosefs-master/files/pkg-message-cgiserv.in b/filesystems/moosefs-master/files/pkg-message-cgiserv.in new file mode 100644 index 000000000000..b93e90eb8847 --- /dev/null +++ b/filesystems/moosefs-master/files/pkg-message-cgiserv.in @@ -0,0 +1,14 @@ +[ +{ type: install + message: <