diff options
Diffstat (limited to 'sys-cluster')
-rw-r--r-- | sys-cluster/glusterfs/Manifest | 6 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el | 5 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs-2.0.8-docdir.patch | 51 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs-2.0.8-parallel-make.patch | 11 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs.confd | 6 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs.initd | 120 | ||||
-rw-r--r-- | sys-cluster/glusterfs/files/glusterfs.vim | 8 | ||||
-rw-r--r-- | sys-cluster/glusterfs/glusterfs-3.0.0.ebuild | 101 | ||||
-rw-r--r-- | sys-cluster/glusterfs/metadata.xml | 18 |
9 files changed, 323 insertions, 3 deletions
diff --git a/sys-cluster/glusterfs/Manifest b/sys-cluster/glusterfs/Manifest index d29ff03..ea076f1 100644 --- a/sys-cluster/glusterfs/Manifest +++ b/sys-cluster/glusterfs/Manifest @@ -2,9 +2,9 @@ AUX 50glusterfs-mode-gentoo.el 169 RMD160 406c0dd2d79d054f059fcae29961fb6b7950e3 AUX glusterfs-2.0.8-docdir.patch 1644 RMD160 6961d29068c6b556f195615b789188f28e80b181 SHA1 4ff29870fae0039f390945ccaee3bcd25c87ae70 SHA256 d2922af3e15faae8ae06102a757b158b510b27cc11ad9ffe643ca67e2046ba07 AUX glusterfs-2.0.8-parallel-make.patch 472 RMD160 62033a196373a90e522d323bea2e1cb0ce27b5c9 SHA1 a18c9cfe9e72438baef0b24faa67f8eb94d9e08d SHA256 761fea76024bdc811c3af08af1cc3d9959e549990662705df0e9cf3588f52d49 AUX glusterfs.confd 129 RMD160 ba0a6f22452b70cb3a7eb6f3bdd2b06e7c441b04 SHA1 c83f9e5c0becaf798b30b1709ea7086b56dd2992 SHA256 a9023ba1112ceb4597c654228f0beb0053ed695aeb32c65e0749a7157fab563d -AUX glusterfs.initd 3134 RMD160 6606d3c3ee825e1af9624d66f5a46e30270e73a3 SHA1 68fcfa5b64dc6b133036b645c64ba75a7afbc126 SHA256 ffa622d26add72dafc1b1f8e6de716b14a6d99911888a344dc7d236fb7667d6e +AUX glusterfs.initd 3131 RMD160 98048ae4dfed1c1ad57e2c8b88190f33f052f9b4 SHA1 64f8370cadbfd3b3e48ae0113a5c985caafc46ae SHA256 e48f3dbc74d3cbd5935fccd5b9f3a76332bebcc6997abb5abab8004f5e1c8a75 AUX glusterfs.vim 139 RMD160 17a4589550934fd8fd3523d0075af7686fc8f905 SHA1 8aa880c49a7bd1a0e185539acede53840b138746 SHA256 f214c1c8a01c9184b535fa7ae307200a8a1dc83fd42e92bdd57a7b1cae1dc099 DIST glusterfs-3.0.0.tar.gz 1662031 RMD160 7af9ac0935e64754d104fb3f4060fce333eab12a SHA1 e433afe8d14495a6cc4a608594cc5a4f5a216b22 SHA256 eed3480e23af1d12875429581e7c7e531151eaacd152282fee0255a6dffb75e7 -EBUILD glusterfs-3.0.0.ebuild 3349 RMD160 250599e81be1ac0fb5d4d966f3fdd593d6dd1464 SHA1 61b14ca45534c58d4967a1722bb37393affe6712 SHA256 8f983e18baa89739dc122cc42708531d012b0f7f88c14cabd1cbe13c9405e09f -MISC ChangeLog 1299 RMD160 8fee54b653871bdb8506d9019deec2c9ebb3d584 SHA1 49e59a18a76b3e6b03634a09d93b3877228d8e1a SHA256 9cdc0a5e652f68dbde54328fc8382a56f33befe0af0199a24ff0fa7a24d4a0f7 +EBUILD glusterfs-3.0.0.ebuild 3346 RMD160 c631d7ea7046b6bb69150d9fbadb0c001615eddc SHA1 9bda005bf85721b1767c5791b04168bbc0651e6b SHA256 1860ec246c19f792a7df108231aac7fc732776ee4d5a26475453d6cfa0b30a97 +MISC ChangeLog 1296 RMD160 6a00b14785899621e6bea8c467ee6916a75a76ae SHA1 60ea97753a3ca40727ce2874f4a9621af91e763f SHA256 80e16cb0329a8f467ce09c59947157616d4e23c314ddda6f4394a099b7517396 MISC metadata.xml 841 RMD160 af0e9efe274b599905c51048f826016e78b2fc62 SHA1 45cc9a8e2a1fdfcf9eadaa79e00792bce0ed7d55 SHA256 e3eb8442866267d664a641b946a9d48b7116ec664af8d3c300d4d34f1b1958ec diff --git a/sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el b/sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el new file mode 100644 index 0000000..c14b0d8 --- /dev/null +++ b/sys-cluster/glusterfs/files/50glusterfs-mode-gentoo.el @@ -0,0 +1,5 @@ + +;;; puppet-mode site-lisp configuration + +(add-to-list 'load-path "@SITELISP@") +(autoload 'glusterfs-mode "glusterfs-mode" "Major mode for editing glusterfs manifests") diff --git a/sys-cluster/glusterfs/files/glusterfs-2.0.8-docdir.patch b/sys-cluster/glusterfs/files/glusterfs-2.0.8-docdir.patch new file mode 100644 index 0000000..5e26f63 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-2.0.8-docdir.patch @@ -0,0 +1,51 @@ +From 6a17bb8523c4c7810bf7797371df22cfb259f7a7 Mon Sep 17 00:00:00 2001 +From: MATSUU Takuto <matsuu@gentoo.org> +Date: Sat, 16 May 2009 07:01:53 +0900 +Subject: [PATCH] Use the standard autoconf $docdir variable. + +--- + doc/examples/Makefile.am | 1 - + extras/Makefile.am | 3 +-- + extras/benchmarking/Makefile.am | 4 +--- + 3 files changed, 2 insertions(+), 6 deletions(-) + +diff --git a/doc/examples/Makefile.am b/doc/examples/Makefile.am +index b4c93f4..5296d83 100644 +--- a/doc/examples/Makefile.am ++++ b/doc/examples/Makefile.am +@@ -1,7 +1,6 @@ + EXTRA = README unify.vol replicate.vol stripe.vol protocol-client.vol protocol-server.vol posix-locks.vol trash.vol write-behind.vol io-threads.vol io-cache.vol read-ahead.vol filter.vol trace.vol + EXTRA_DIST = $(EXTRA) + +-docdir = $(datadir)/doc/$(PACKAGE_NAME) + Examplesdir = $(docdir)/examples + Examples_DATA = $(EXTRA) + +diff --git a/extras/Makefile.am b/extras/Makefile.am +index 9be3973..ea0b33d 100644 +--- a/extras/Makefile.am ++++ b/extras/Makefile.am +@@ -1,6 +1,5 @@ + +-docdir = $(datadir)/doc/glusterfs/ +-EditorModedir = $(docdir)/ ++EditorModedir = $(docdir) + EditorMode_DATA = glusterfs-mode.el glusterfs.vim + + SUBDIRS = init.d benchmarking +diff --git a/extras/benchmarking/Makefile.am b/extras/benchmarking/Makefile.am +index 04cc061..bfcc592 100644 +--- a/extras/benchmarking/Makefile.am ++++ b/extras/benchmarking/Makefile.am +@@ -1,7 +1,5 @@ + +-docdir = $(datadir)/doc/$(PACKAGE_NAME)/benchmarking +- +-benchmarkingdir = $(docdir) ++benchmarkingdir = $(docdir)/benchmarking + + benchmarking_DATA = rdd.c glfs-bm.c README launch-script.sh local-script.sh + +-- +1.6.3 + diff --git a/sys-cluster/glusterfs/files/glusterfs-2.0.8-parallel-make.patch b/sys-cluster/glusterfs/files/glusterfs-2.0.8-parallel-make.patch new file mode 100644 index 0000000..fbe6333 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs-2.0.8-parallel-make.patch @@ -0,0 +1,11 @@ +diff --git a/glusterfsd/src/Makefile.am b/glusterfsd/src/Makefile.am +index 0609179..548ed3a 100644 +--- a/glusterfsd/src/Makefile.am ++++ b/glusterfsd/src/Makefile.am +@@ -20,5 +20,6 @@ uninstall-local: + install-data-local: + $(INSTALL) -d -m 755 $(DESTDIR)$(localstatedir)/run + $(INSTALL) -d -m 755 $(DESTDIR)$(localstatedir)/log/glusterfs ++ $(INSTALL) -d -m 755 $(DESTDIR)$(sbindir) + rm -f $(DESTDIR)$(sbindir)/glusterfs + ln -s glusterfsd $(DESTDIR)$(sbindir)/glusterfs diff --git a/sys-cluster/glusterfs/files/glusterfs.confd b/sys-cluster/glusterfs/files/glusterfs.confd new file mode 100644 index 0000000..257d0a8 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs.confd @@ -0,0 +1,6 @@ +#glusterfsd_mountpoint="" +#glusterfsd_log="" +#glusterfsd_vol="" +#glusterfsd_port="" +#glusterfsd_transport="" +#glusterfsd_opts="" diff --git a/sys-cluster/glusterfs/files/glusterfs.initd b/sys-cluster/glusterfs/files/glusterfs.initd new file mode 100644 index 0000000..a89aa58 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs.initd @@ -0,0 +1,120 @@ +#!/sbin/runscript +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvs/lportage/sys-cluster/glusterfs/files/glusterfs.initd,v 1.1 2010-01-18 23:17:51 randomdan Exp $ + +if [[ "${SVCNAME}" != "glusterfs" ]] +then + GLUSTERFS_NAME="${SVCNAME#glusterfs.}" +else + GLUSTERFS_NAME="glusterfs" +fi + +GLUSTERFS_PIDFILE="/var/run/${SVCNAME}.pid" + +eval 'GLUSTERFS_LOGFILE="${'${GLUSTERFS_NAME}'_log:-/var/log/glusterfs/'${GLUSTERFS_NAME}'.log}"' +eval 'GLUSTERFS_VOLFILE="${'${GLUSTERFS_NAME}'_vol:-/etc/glusterfs/'${GLUSTERFS_NAME}'.vol}"' +eval 'GLUSTERFS_SERVER="${'${GLUSTERFS_NAME}'_server}"' +eval 'GLUSTERFS_PORT="${'${GLUSTERFS_NAME}'_port:-6996}"' +eval 'GLUSTERFS_TRANSPORT="${'${GLUSTERFS_NAME}'_transport:-socket}"' +eval 'GLUSTERFS_OPTS="${'${GLUSTERFS_NAME}'_opts}"' +eval 'GLUSTERFS_MOUNTPOINT="${'${GLUSTERFS_NAME}'_mountpoint}"' + +depend() { + need net + [[ -n "${GLUSTERFS_MOUNTPOINT}" ]] && need fuse + use dns + before netmount + after firewall ntp-client ntpd +} + +checkconfig() { + if [[ -z "${GLUSTERFS_NAME}" ]] + then + eerror "The service name is not properly formatted." + return 1 + fi + + if [[ -z "${GLUSTERFS_SERVER}" ]] + then + if [[ -z "${GLUSTERFS_VOLFILE}" ]] + then + eerror "No GlusterFS volume file source has been defined. Edit /etc/conf.d/glusterfs" + eerror "and configure a volume file source for ${SVCNAME}." + return 1 + else + if [[ ! -f "${GLUSTERFS_VOLFILE}" ]] + then + eerror "Cannot find volume file: ${GLUSTERFS_VOLFILE}" + return 1 + fi + fi + fi + + if [[ -n "${GLUSTERFS_MOUNTPOINT}" && ! -d "${GLUSTERFS_MOUNTPOINT}" ]] + then + eerror "The mountpoint ${GLUSTERFS_MOUNTPOINT} does not exist." + return 1 + fi +} + +start() { + local status + + checkconfig || return 1 + + ebegin "Starting GlusterFS (${SVCNAME})" + eindent + + if [[ -z "${GLUSTERFS_MOUNTPOINT}" ]] + then + einfo "Starting in server mode ..." + else + einfo "Starting in client mode. Mounting filesystem ..." + fi + + if [[ -n "${GLUSTERFS_SERVER}" ]] + then + einfo "Using server supplied volume file" + start-stop-daemon --start --pidfile ${GLUSTERFS_PIDFILE} \ + --exec /usr/sbin/glusterfsd -- \ + --pid-file=${GLUSTERFS_PIDFILE} \ + --log-file=${GLUSTERFS_LOGFILE} \ + --volfile-server=${GLUSTERFS_SERVER} \ + --volfile-server-port=${GLUSTERFS_PORT} \ + --volfile-server-transport=${GLUSTERFS_TRANSPORT} \ + ${GLUSTERFS_OPTS} ${GLUSTERFS_MOUNTPOINT} + status="$?" + else + einfo "Using local volume file" + start-stop-daemon --start --pidfile ${GLUSTERFS_PIDFILE} \ + --exec /usr/sbin/glusterfsd -- \ + --pid-file=${GLUSTERFS_PIDFILE} \ + --log-file=${GLUSTERFS_LOGFILE} \ + --volfile=${GLUSTERFS_VOLFILE} \ + ${GLUSTERFS_OPTS} ${GLUSTERFS_MOUNTPOINT} + status="$?" + fi + + eoutdent + eend ${status} +} + +stop() { + local status + + ebegin "Stopping GlusterFS (${SVCNAME})" + eindent + if [[ -z "${GLUSTERFS_MOUNTPOINT}" ]] + then + einfo "Stopping server process ..." + start-stop-daemon --stop --pidfile ${GLUSTERFS_PIDFILE} + status="$?" + else + einfo "Unmounting ${GLUSTERFS_MOUNTPOINT} ..." + umount "${GLUSTERFS_MOUNTPOINT}" + status="$?" + fi + eoutdent + eend ${status} +} diff --git a/sys-cluster/glusterfs/files/glusterfs.vim b/sys-cluster/glusterfs/files/glusterfs.vim new file mode 100644 index 0000000..bbb9cb1 --- /dev/null +++ b/sys-cluster/glusterfs/files/glusterfs.vim @@ -0,0 +1,8 @@ +if &compatible || v:version < 603 + finish +endif + + +" GlusterFS Volume files +au BufNewFile,BufRead *.vol + \ set filetype=glusterfs diff --git a/sys-cluster/glusterfs/glusterfs-3.0.0.ebuild b/sys-cluster/glusterfs/glusterfs-3.0.0.ebuild new file mode 100644 index 0000000..fa0dc84 --- /dev/null +++ b/sys-cluster/glusterfs/glusterfs-3.0.0.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvs/lportage/sys-cluster/glusterfs/glusterfs-3.0.0.ebuild,v 1.1 2010-01-18 23:17:51 randomdan Exp $ + +EAPI="2" + +inherit autotools elisp-common eutils multilib versionator + +DESCRIPTION="GlusterFS is a powerful network/cluster filesystem" +HOMEPAGE="http://www.gluster.org/" +SRC_URI="http://ftp.gluster.com/pub/gluster/${PN}/$(get_version_component_range '1-2')/${PV}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="emacs +fuse infiniband static vim-syntax extras" + +DEPEND="emacs? ( virtual/emacs ) + fuse? ( >=sys-fs/fuse-2.7.0 ) + infiniband? ( sys-infiniband/libibverbs )" +RDEPEND="${DEPEND} + !net-fs/glusterfs" + +SITEFILE="50${PN}-mode-gentoo.el" + +src_prepare() { + epatch "${FILESDIR}/${PN}-2.0.8-parallel-make.patch" + epatch "${FILESDIR}/${PN}-2.0.8-docdir.patch" + eautoreconf || die "eautoreconf failed" +} + +src_configure() { + econf \ + $(use_enable fuse fuse-client) \ + $(use_enable infiniband ibverbs) \ + $(use_enable static) \ + --disable-bdb \ + --docdir=/usr/share/doc/${PF} \ + --localstatedir=/var || die +# $(use_enable berkdb bdb) \ +} + +src_compile() { + emake || die "Emake failed" + if use emacs ; then + elisp-compile extras/glusterfs-mode.el || die "elisp-compile failed" + fi +} + +src_install() { + emake DESTDIR="${D}" install || die + + if use emacs ; then + elisp-install ${PN} extras/glusterfs-mode.el* || die "elisp-install failed" + elisp-site-file-install "${FILESDIR}/${SITEFILE}" + fi + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/ftdetect; doins "${FILESDIR}/glusterfs.vim" || die + insinto /usr/share/vim/vimfiles/syntax; doins extras/glusterfs.vim || die + fi + + if use extras ; then + newbin extras/volgen/glusterfs-volgen glusterfs-volgen || die "Failed to install bins" + newbin extras/backend-xattr-sanitize.sh glusterfs-backend-xattr-sanitize || die "Failed to install bins" + newbin extras/migrate-unify-to-distribute.sh glusterfs-migrate-unify-to-distribute || die "Failed to install bins" + fi + + dodoc AUTHORS ChangeLog NEWS README THANKS || die "dodoc failed" + + newinitd "${FILESDIR}/${PN}.initd" glusterfsd || die "newinitd failed" + newconfd "${FILESDIR}/${PN}.confd" glusterfsd || die "newconfd failed" + + keepdir /var/log/${PN} || die "keepdir failed" +} + +pkg_postinst() { + elog "The glusterfs startup script can be multiplexed." + elog "The default startup script uses /etc/conf.d/glusterfs to configure the" + elog "separate service. To create additional instances of the glusterfs service" + elog "simply create a symlink to the glusterfs startup script." + elog + elog "Example:" + elog " # ln -s glusterfsd /etc/init.d/glusterfsd2" + elog " # ${EDITOR} /etc/glusterfs/glusterfsd2.vol" + elog "You can now treat glusterfsd2 like any other service" + echo + elog "You can mount exported GlusterFS filesystems through /etc/fstab instead of" + elog "through a startup script instance. For more information visit:" + elog "http://www.gluster.org/docs/index.php/Mounting_a_GlusterFS_Volume" + echo + ewarn "You need to use a ntp client to keep the clocks synchronized across all" + ewarn "of your servers. Setup a NTP synchronizing service before attempting to" + ewarn "run GlusterFS." + + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/sys-cluster/glusterfs/metadata.xml b/sys-cluster/glusterfs/metadata.xml new file mode 100644 index 0000000..b999e8e --- /dev/null +++ b/sys-cluster/glusterfs/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>cluster</herd> + <maintainer> + <email>alexxy@gentoo.org</email> + <name>Alexey Shvetsov</name> + </maintainer> + <longdescription lang='en'> + GlusterFS is a cluster file-system capable of scaling to several peta-bytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system. GlusterFS is based on a stackable user space design without compromising performance. + </longdescription> + <use> + <flag name='fuse'>Add FUSE mount helper</flag> + <flag name='extras'>Install extra helper scripts</flag> + <flag name='infiniband'>Add support for Infiniband ibverbs transport. + Librarys can be found in science overlay</flag> + </use> +</pkgmetadata> |