diff options
author | Christian Ruppert <idl0r@gentoo.org> | 2011-09-28 15:23:02 +0000 |
---|---|---|
committer | Christian Ruppert <idl0r@gentoo.org> | 2011-09-28 15:23:02 +0000 |
commit | f7c8f27c278885db7087ed2daf44078bc4fa2cba (patch) | |
tree | 47d3d5249b578c46facdc9f9c2247dd1ec6fe92e /net-proxy/haproxy | |
parent | New version that fixes bug #384535. Removed 0.6.1 (diff) | |
download | gentoo-2-f7c8f27c278885db7087ed2daf44078bc4fa2cba.tar.gz gentoo-2-f7c8f27c278885db7087ed2daf44078bc4fa2cba.tar.bz2 gentoo-2-f7c8f27c278885db7087ed2daf44078bc4fa2cba.zip |
Improve haproxy init script, bug 384753. Also fix use of deprecated opts variable.
(Portage version: 2.2.0_alpha59/cvs/Linux x86_64)
Diffstat (limited to 'net-proxy/haproxy')
-rw-r--r-- | net-proxy/haproxy/ChangeLog | 10 | ||||
-rw-r--r-- | net-proxy/haproxy/files/haproxy.initd-r1 | 50 | ||||
-rw-r--r-- | net-proxy/haproxy/haproxy-1.3.26-r1.ebuild | 73 | ||||
-rw-r--r-- | net-proxy/haproxy/haproxy-1.4.18-r1.ebuild | 75 |
4 files changed, 207 insertions, 1 deletions
diff --git a/net-proxy/haproxy/ChangeLog b/net-proxy/haproxy/ChangeLog index 5177e9ab5d70..9c065f8b7593 100644 --- a/net-proxy/haproxy/ChangeLog +++ b/net-proxy/haproxy/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for net-proxy/haproxy # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/ChangeLog,v 1.55 2011/09/21 13:44:51 idl0r Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/ChangeLog,v 1.56 2011/09/28 15:23:02 idl0r Exp $ + +*haproxy-1.4.18-r1 (28 Sep 2011) +*haproxy-1.3.26-r1 (28 Sep 2011) + + 28 Sep 2011; Christian Ruppert <idl0r@gentoo.org> +haproxy-1.3.26-r1.ebuild, + +haproxy-1.4.18-r1.ebuild, +files/haproxy.initd-r1: + Improve haproxy init script, bug 384753. Also fix use of deprecated opts + variable. 21 Sep 2011; Christian Ruppert <idl0r@gentoo.org> haproxy-1.3.25.ebuild, haproxy-1.3.26.ebuild, -haproxy-1.4.8.ebuild, haproxy-1.4.15.ebuild, diff --git a/net-proxy/haproxy/files/haproxy.initd-r1 b/net-proxy/haproxy/files/haproxy.initd-r1 new file mode 100644 index 000000000000..7edf5e6bc27e --- /dev/null +++ b/net-proxy/haproxy/files/haproxy.initd-r1 @@ -0,0 +1,50 @@ +#!/sbin/runscript +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/files/haproxy.initd-r1,v 1.1 2011/09/28 15:23:01 idl0r Exp $ + +extra_commands="checkconfig reload" + +CONFFILE=/etc/${SVCNAME}.cfg +PIDFILE=/var/run/${SVCNAME}.pid + +depend() { + need net + use dns logger +} + +checkconfig() { + if [ ! -f "${CONFFILE}" ]; then + eerror "${CONFFILE} does not exist!" + return 1 + fi + + ebegin "Checking ${CONFFILE}" + /usr/bin/haproxy -q -c -f "${CONFFILE}" + eend $? +} + +start() { + ebegin "Starting ${SVCNAME}" + start-stop-daemon --pidfile "${PIDFILE}" --exec /usr/bin/haproxy \ + --start -- -D -p "${PIDFILE}" -f "${CONFFILE}" + eend $? +} + +stop() { + ebegin "Stopping ${SVCNAME}" + + if [ "${RC_CMD}" = "restart" ]; then + checkconfig || return 1 + fi + + start-stop-daemon --stop --pidfile "${PIDFILE}" + eend $? +} + +reload() { + ebegin "Reloading ${SVCNAME}" + checkconfig || { eerror "Reloading failed, please fix your ${CONFFILE} first"; return 1; } + /usr/bin/haproxy -D -p "${PIDFILE}" -f "${CONFFILE}" -sf $(cat "${PIDFILE}") + eend $? +} diff --git a/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild b/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild new file mode 100644 index 000000000000..cd6d6a604def --- /dev/null +++ b/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild,v 1.1 2011/09/28 15:23:02 idl0r Exp $ + +inherit eutils versionator toolchain-funcs flag-o-matic + +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments" +HOMEPAGE="http://haproxy.1wt.eu" +SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="examples pcre vim-syntax" + +DEPEND="pcre? ( dev-libs/libpcre )" +RDEPEND="${DEPEND}" + +pkg_setup() { + enewgroup haproxy + enewuser haproxy -1 -1 -1 haproxy +} + +src_compile() { + local args="TARGET=linux26" + + use pcre && args="${args} USE_PCRE=1" + + use kernel_linux && args="${args} USE_LINUX_SPLICE=1" + use kernel_linux && args="${args} USE_LINUX_TPROXY=1" + + # For now, until the strict-aliasing breakage will be fixed + append-cflags -fno-strict-aliasing + + emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args} || die +} + +src_install() { + dobin haproxy || die + newinitd "${FILESDIR}/haproxy.initd-r1" haproxy || die + + # Don't install useless files + rm examples/build.cfg doc/*gpl.txt + + dodoc CHANGELOG ROADMAP TODO doc/{configuration,haproxy-en}.txt + doman doc/haproxy.1 + + if use examples; + then + docinto examples + dodoc examples/*.cfg || die + fi + + if use vim-syntax; + then + insinto /usr/share/vim/vimfiles/syntax + doins examples/haproxy.vim || die + fi +} + +pkg_postinst() { + if [[ ! -f "${ROOT}/etc/haproxy.cfg" ]] ; then + ewarn "You need to create /etc/haproxy.cfg before you start the haproxy service." + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created." + ewarn "Make use of them with the \"user\" and \"group\" directives." + + if [[ -d "${ROOT}/usr/share/doc/${PF}" ]]; then + einfo "Please consult the installed documentation for learning the configuration file's syntax." + einfo "The documentation and sample configuration files are installed here:" + einfo " ${ROOT}usr/share/doc/${PF}" + fi + fi +} diff --git a/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild b/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild new file mode 100644 index 000000000000..8363d6118a4b --- /dev/null +++ b/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild,v 1.1 2011/09/28 15:23:02 idl0r Exp $ + +EAPI="3" + +inherit eutils versionator toolchain-funcs flag-o-matic + +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments" +HOMEPAGE="http://haproxy.1wt.eu" +SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="examples pcre vim-syntax" + +DEPEND="pcre? ( dev-libs/libpcre )" +RDEPEND="${DEPEND}" + +pkg_setup() { + enewgroup haproxy + enewuser haproxy -1 -1 -1 haproxy +} + +src_compile() { + local args="TARGET=linux26" + + use pcre && args="${args} USE_PCRE=1" + + use kernel_linux && args="${args} USE_LINUX_SPLICE=1" + use kernel_linux && args="${args} USE_LINUX_TPROXY=1" + + # For now, until the strict-aliasing breakage will be fixed + append-cflags -fno-strict-aliasing + + emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args} || die +} + +src_install() { + dobin haproxy || die + newinitd "${FILESDIR}/haproxy.initd-r1" haproxy || die + + # Don't install useless files + rm examples/build.cfg doc/*gpl.txt + + dodoc CHANGELOG ROADMAP TODO doc/{configuration,haproxy-en}.txt + doman doc/haproxy.1 + + if use examples; + then + docinto examples + dodoc examples/*.cfg || die + fi + + if use vim-syntax; + then + insinto /usr/share/vim/vimfiles/syntax + doins examples/haproxy.vim || die + fi +} + +pkg_postinst() { + if [[ ! -f "${ROOT}/etc/haproxy.cfg" ]] ; then + ewarn "You need to create /etc/haproxy.cfg before you start the haproxy service." + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created." + ewarn "Make use of them with the \"user\" and \"group\" directives." + + if [[ -d "${ROOT}/usr/share/doc/${PF}" ]]; then + einfo "Please consult the installed documentation for learning the configuration file's syntax." + einfo "The documentation and sample configuration files are installed here:" + einfo " ${ROOT}usr/share/doc/${PF}" + fi + fi +} |