commit:     c0956c57d9515f88ebb074b8bde274ff008e7579
Author:     Kent Fredric <kentnl <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 19 07:09:46 2017 +0000
Commit:     Kent Fredric <kentnl <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 07:10:33 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c0956c57

dev-perl/MogileFS-Server: Bump to version 2.720.0

- EAPI6
- Enable tests ( some appear to auto-skip when servers are missing
    and the objective is to enable them to see what breaks and maximally
    enable all possible end-user tests )
- Rework gentoo /etc/ stuff to use patches instead of explicit
    ${FILESDIR} copies, in order to make it easier for end users to
    tweak installed files with eapply_user, and make it easier to
    construct effective install trees trivially using upstream sources,
    as well as discouraging accidental retroactive changes to existing
    available versions ( happened many times in the past ), while
    encouraging using patch layering to augment incremental changes
    where relevant.
- Remove hacks around mogdeps, which vanished upstream in
    MogileFS-Server 2.56 ( 2011-2012 )
- Use 'checkpath' instead of 'install' in mogilefsd script, and remove
    EQAWARNING use of keepdir /var/run

Upstream:
- Work with DBD::SQLite latest lock errors
- remove update_host_property
- remove users of unreachable_fids table
- batch MySQL updates in monitor
- defer monitor DB updates until all HTTP requests are done
- defer expiry of timed out poolable connections
- disable watch_write before retrying write in poolable connections
- do not write before event_write in poolable connections
- add conn_pool_size config option
- enable TCP keepalives for iostat watcher sockets
- add "readonly" state to overide host device "alive" state

Package-Manager: Portage-2.3.8, Repoman-2.3.3

 dev-perl/MogileFS-Server/Manifest                  |   1 +
 .../MogileFS-Server/MogileFS-Server-2.720.0.ebuild |  76 +++++++++
 .../MogileFS-Server-2.720.0-gentoo-init-conf.patch | 184 +++++++++++++++++++++
 3 files changed, 261 insertions(+)

diff --git a/dev-perl/MogileFS-Server/Manifest 
b/dev-perl/MogileFS-Server/Manifest
index 34fd0abfc88..1a1126ebfd7 100644
--- a/dev-perl/MogileFS-Server/Manifest
+++ b/dev-perl/MogileFS-Server/Manifest
@@ -1 +1,2 @@
 DIST MogileFS-Server-2.70.tar.gz 199850 SHA256 
686f328a4a6dacdb6c6153e7c1837875580d8437bf91ebd74ef197b1caefa7a6 SHA512 
e5dd7dbfd8422d69d1ffbe9d6cf5f8845e33484a7c812fe60285c0aa17d812a5de33d1a0503972749d70fed92767eedc1119bea650712150d9d5d4e4fdbccb8f
 WHIRLPOOL 
c47a79e0002b38d605d1b4407bab886a53f818f3b664421e6e83696a2db152fb71cd093acbaecc6fc46f2bb69a43339c105d4bf566af1e834492aa4a44adedcd
+DIST MogileFS-Server-2.72.tar.gz 200057 SHA256 
d7d5a45d50127bf62e451c6d86eb247103b01c46662898ae4e18daa08be8e0bf SHA512 
4076ba33123c984f9d7c56db7d308b4d857e852caa8d811d86ed551b9ab74a6dfc93b034d034ec2802376035799860c613aef2bdd3898c1225e37727fda34ade
 WHIRLPOOL 
1bb22dd7701d885268416556bec8c37f1f7cadcadcec50c27ecebd84c8222626eeb018d6d72f6ce2aeb985d3bbf9f625d9561a3109ef443c82a35faf15dce083

diff --git a/dev-perl/MogileFS-Server/MogileFS-Server-2.720.0.ebuild 
b/dev-perl/MogileFS-Server/MogileFS-Server-2.720.0.ebuild
new file mode 100644
index 00000000000..70b6fe87e18
--- /dev/null
+++ b/dev-perl/MogileFS-Server/MogileFS-Server-2.720.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=DORMANDO
+DIST_VERSION=${PV%0.0}
+inherit user perl-module
+
+DESCRIPTION="Server for the MogileFS distributed file system"
+HOMEPAGE="http://www.danga.com/mogilefs/ ${HOMEPAGE}"
+
+IUSE="mysql sqlite postgres"
+
+SLOT="0"
+LICENSE="|| ( Artistic GPL-2 )"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+# Upstream site recommends this,
+# but it breaks Perlbal
+# dev-perl/Perlbal-XS-HTTPHeaders
+RDEPEND="dev-perl/Net-Netmask
+               >=dev-perl/Danga-Socket-1.610.0
+               >=dev-perl/Sys-Syscall-0.220.0
+               >=dev-perl/Perlbal-1.790
+               >=dev-perl/IO-AIO-4
+               dev-perl/libwww-perl
+               >=dev-perl/MogileFS-Client-1.170.0
+               >=dev-perl/MogileFS-Utils-2.280.0
+               dev-perl/Cache-Memcached
+               mysql? ( dev-perl/DBD-mysql )
+               postgres? ( dev-perl/DBD-Pg )
+               sqlite? ( dev-perl/DBD-SQLite )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/${P}-gentoo-init-conf.patch"
+)
+DIST_TEST="do"
+
+MOGILE_USER="mogile"
+
+pkg_setup() {
+       # Warning! It is important that the uid is constant over Gentoo machines
+       # As mogilefs may be used with non-local block devices that move!
+       enewuser ${MOGILE_USER} 460 -1 -1
+}
+
+src_install() {
+       perl-module_src_install || die "perl-module_src_install failed"
+       cd "${S}"
+
+       newconfd "${S}"/gentoo/conf.d/mogilefsd mogilefsd
+       newinitd "${S}"/gentoo/init.d/mogilefsd mogilefsd
+
+       newconfd "${S}"/gentoo/conf.d/mogstored mogstored
+       newinitd "${S}"/gentoo/init.d/mogstored mogstored
+
+       newinitd "${S}"/gentoo/init.d/mogautomount mogautomount
+
+       diropts -m 700 -o ${MOGILE_USER}
+       keepdir /var/mogdata
+
+       diropts -m 755 -o root
+       dodir /etc/mogilefs
+
+       insinto /etc/mogilefs
+       insopts -m 600 -o root -g ${MOGILE_USER}
+       newins "${S}"/gentoo/conf/mogilefsd.conf mogilefsd.conf
+       newins "${S}"/gentoo/conf/mogstored.conf mogstored.conf
+}
+
+pkg_postinst() {
+       chmod 640 "${ROOT}"/etc/mogilefs/{mogilefsd,mogstored}.conf
+       chown root:${MOGILE_USER} 
"${ROOT}"/etc/mogilefs/{mogilefsd,mogstored}.conf
+}

diff --git 
a/dev-perl/MogileFS-Server/files/MogileFS-Server-2.720.0-gentoo-init-conf.patch 
b/dev-perl/MogileFS-Server/files/MogileFS-Server-2.720.0-gentoo-init-conf.patch
new file mode 100644
index 00000000000..7a90e5c5d79
--- /dev/null
+++ 
b/dev-perl/MogileFS-Server/files/MogileFS-Server-2.720.0-gentoo-init-conf.patch
@@ -0,0 +1,184 @@
+diff --git a/gentoo/conf.d/mogilefsd b/gentoo/conf.d/mogilefsd
+new file mode 100644
+index 0000000..b6968d1
+--- /dev/null
++++ b/gentoo/conf.d/mogilefsd
+@@ -0,0 +1,3 @@
++PIDFILE="/var/run/mogile/mogilefsd.pid"
++MOGILEFSD_OPTS="--daemonize --pidfile=${PIDFILE}"
++# vim: ft=gentoo-conf-d:
+diff --git a/gentoo/conf.d/mogstored b/gentoo/conf.d/mogstored
+new file mode 100644
+index 0000000..aa3cb63
+--- /dev/null
++++ b/gentoo/conf.d/mogstored
+@@ -0,0 +1,3 @@
++PIDFILE="/var/run/mogile/mogstored.pid"
++MOGSTORED_OPTS=""
++# vim: ft=gentoo-conf-d:
+diff --git a/gentoo/conf/mogilefsd.conf b/gentoo/conf/mogilefsd.conf
+new file mode 100644
+index 0000000..df50e23
+--- /dev/null
++++ b/gentoo/conf/mogilefsd.conf
+@@ -0,0 +1,34 @@
++# System user
++user = mogile
++# These are set inside the Gentoo conf.d/mogilefsd
++#pidfile = /var/run/mogile/mogilefsd.pid
++#daemonize = 1
++
++# Database settings
++db_dsn        = DBI:mysql:mogilefs
++db_user       = mogile
++# You must insert your password here!
++db_pass       = __PASSWORD__
++
++# Network settings
++#conf_port = 7001
++#listen = 10.0.0.1:7001, 
++
++# Storage
++#mog_root = /mnt/mogilefs
++
++# Plugins
++#plugins = ...
++
++# Tuning knobs
++#query_jobs = 20
++#delete_jobs = 1
++#replicate_jobs = 1
++#monitor_jobs = 1
++#reaper_jobs = 1
++#min_free_space = 100
++#max_disk_age = 5
++#node_timeout = 2
++#old_repl_compat = 1
++#default_mindevcount = 2
++#no_unreachable_tracking = 1
+diff --git a/gentoo/conf/mogstored.conf b/gentoo/conf/mogstored.conf
+new file mode 100644
+index 0000000..100a8c3
+--- /dev/null
++++ b/gentoo/conf/mogstored.conf
+@@ -0,0 +1,21 @@
++# These are set inside the Gentoo conf.d/mogilefsd
++#pidfile = /var/run/mogile/mogstored.pid
++#daemonize = 1
++
++# Network settings
++#httplisten = 0.0.0.0:7500
++#mgmtlisten = 0.0.0.0:7501
++
++# Storage
++#docroot = /var/mogdata
++
++# Server type
++# Perlbal is the default
++#server = perlbal
++# But lighttpd is supported too
++#server = lighttpd
++#serverbin = /usr/sbin/lighttpd
++
++# Tuning knobs
++#max_conns = 10000
++#opt_iostat 1
+diff --git a/gentoo/init.d/mogautomount b/gentoo/init.d/mogautomount
+new file mode 100644
+index 0000000..f287366
+--- /dev/null
++++ b/gentoo/init.d/mogautomount
+@@ -0,0 +1,21 @@
++#!/sbin/openrc-run
++
++NAME="mogautomount"
++BINARY="/usr/bin/mogautomount"
++
++depend() {
++      use net
++      before mogstored
++}
++
++start() {
++      ebegin "Mounting MogileFS disks"
++      ${BINARY} --chmod-mountpoints
++      eend $?
++}
++
++stop() {
++      :
++}
++
++# vim: ft=gentoo-init-d:
+diff --git a/gentoo/init.d/mogilefsd b/gentoo/init.d/mogilefsd
+new file mode 100644
+index 0000000..062568e
+--- /dev/null
++++ b/gentoo/init.d/mogilefsd
+@@ -0,0 +1,31 @@
++#!/sbin/openrc-run
++
++NAME="mogilefsd"
++BINARY="/usr/bin/mogilefsd"
++MOGILE_UID="mogile"
++MOGILE_GID="mogile"
++
++depend() {
++      use net mysql postgresql
++      after mysql postgresql
++}
++
++start() {
++      checkpath --directory \
++              --owner "${MOGILE_UID}:${MOGILE_GID}" \
++              --mode 700 \
++              "$(dirname $PIDFILE)"
++      ebegin "Starting $NAME"
++      start-stop-daemon --chuid ${MOGILE_UID}:${MOGILE_GID} --start \
++              --pidfile ${PIDFILE} --exec ${BINARY} \
++              -- ${MOGILEFSD_OPTS}
++      eend $?
++}
++
++stop() {
++      ebegin "Stopping $NAME"
++      start-stop-daemon --stop --quiet --pidfile="${PIDFILE}"
++      eend $?
++}
++
++# vim: ft=gentoo-init-d noet:
+diff --git a/gentoo/init.d/mogstored b/gentoo/init.d/mogstored
+new file mode 100644
+index 0000000..d28a853
+--- /dev/null
++++ b/gentoo/init.d/mogstored
+@@ -0,0 +1,29 @@
++#!/sbin/openrc-run
++
++NAME="mogstored"
++BINARY="/usr/bin/mogstored"
++MOGILE_UID="mogile"
++MOGILE_GID="mogile"
++
++depend() {
++      use net logger
++      before mogilefsd
++      need mogautomount
++}
++
++start() {
++      install -o $MOGILE_UID -g $MOGILE_GID -d $(dirname $PIDFILE)
++      ebegin "Starting $NAME"
++      start-stop-daemon --start --quiet \
++              --pidfile=${PIDFILE} --exec ${BINARY} \
++              -- --daemonize --pidfile=${PIDFILE} ${MOGSTORED_OPTS}
++      eend $?
++}
++
++stop() {
++      ebegin "Stopping $NAME"
++      start-stop-daemon --stop --quiet --pidfile="${PIDFILE}"
++      eend $?
++}
++
++# vim: ft=gentoo-init-d:

Reply via email to