summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/keepalived/Manifest1
-rw-r--r--sys-cluster/keepalived/files/keepalived.service-r115
-rw-r--r--sys-cluster/keepalived/keepalived-2.2.2.ebuild90
3 files changed, 106 insertions, 0 deletions
diff --git a/sys-cluster/keepalived/Manifest b/sys-cluster/keepalived/Manifest
index 4408c62c05aa..3b9914d00d37 100644
--- a/sys-cluster/keepalived/Manifest
+++ b/sys-cluster/keepalived/Manifest
@@ -1,2 +1,3 @@
DIST keepalived-2.0.20.tar.gz 1036063 BLAKE2B 217dee8c6dcb148119822f3c6a0b57482e91a17671a35333d0dccf04a3f7c6606a1c9e0b3f2a3adeab838fd91b7c714a0bf11895fe0c7d90d836d3585620c8e2 SHA512 36bbc4aa0a1045486e608c9f4ed73f4335b871dae88beaed10d86445474c462136885225cd6b61219a36fca2ff43771623bc6d072e406cf684acc2ca8f2a38f6
DIST keepalived-2.1.5.tar.gz 1081559 BLAKE2B 791de7f24d012d77fbf9573713ab158cd91c08b969982b5d6bb86e5e6ed347281378dd5106a05db2f37fd9ab2eb479c131333b4b8c6983671b18652122fdbe37 SHA512 107d071aa1546023a3eb7c2cba4707ab6fbb10af62984ab41c9358b5e28289f8f277456983fe8649a15a77939734d3af573b8b050500d9eb521b4b0537f97aa6
+DIST keepalived-2.2.2.tar.gz 1159896 BLAKE2B 42ff86b4aa7c0a45a3472102107701262b44b780987ed93f3dde7005f61699c1488fd92fccb75f77ef5dcc83461428bbad79cc59cd4648a824a8bfbe7fbd2c34 SHA512 05bb589c76faa4d3f734ecb1a3e5ac40af006fe5dce962bcd9617f192e59bb5336a911b148c1530fb864333da87c3d42a6fbf7d0ef074f6a53ce5a71db8ec706
diff --git a/sys-cluster/keepalived/files/keepalived.service-r1 b/sys-cluster/keepalived/files/keepalived.service-r1
new file mode 100644
index 000000000000..a3624ed41f63
--- /dev/null
+++ b/sys-cluster/keepalived/files/keepalived.service-r1
@@ -0,0 +1,15 @@
+[Unit]
+Description=LVS and VRRP High Availability Monitor
+After=network-online.target syslog.target
+Wants=network-online.target
+
+[Service]
+Type=notify
+NotifyAccess=all
+PIDFile=/run/keepalived.pid
+KillMode=process
+ExecStart=/usr/sbin/keepalived --dont-fork $KEEPALIVED_OPTIONS
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-cluster/keepalived/keepalived-2.2.2.ebuild b/sys-cluster/keepalived/keepalived-2.2.2.ebuild
new file mode 100644
index 000000000000..395a98ee08f7
--- /dev/null
+++ b/sys-cluster/keepalived/keepalived-2.2.2.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools systemd
+
+DESCRIPTION="A strong & robust keepalive facility to the Linux Virtual Server project"
+HOMEPAGE="https://www.keepalived.org/"
+SRC_URI="https://www.keepalived.org/software/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="+bfd dbus -json regex snmp systemd"
+
+RDEPEND="dev-libs/libnl:=
+ dev-libs/openssl:=
+ dev-libs/popt
+ net-libs/libnfnetlink
+ sys-apps/iproute2
+ regex? ( >=dev-libs/libpcre2-8 )
+ dbus? ( sys-apps/dbus dev-libs/glib:2 )
+ json? ( dev-libs/json-c:= )
+ snmp? ( net-analyzer/net-snmp )
+ systemd? ( sys-apps/systemd )"
+DEPEND="${RDEPEND}
+ >=sys-kernel/linux-headers-4.4"
+
+DOCS=(
+ README CONTRIBUTORS INSTALL ChangeLog AUTHOR TODO
+ doc/keepalived.conf.SYNOPSIS doc/NOTE_vrrp_vmac.txt
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local init
+ if use systemd; then
+ init=systemd
+ else
+ init=custom
+ fi
+
+ # keepalived has support to dynamically use some libraries instead of
+ # linking them:
+ #--enable-dynamic-linking \
+ #--enable-libiptc-dynamic \
+ #--enable-libnl-dynamic \
+ #--enable-libxtables-dynamic \
+ STRIP=/bin/true \
+ econf \
+ --with-init=${init} \
+ --with-kernel-dir=/usr \
+ --enable-sha1 \
+ --enable-vrrp \
+ $(use_enable bfd) \
+ $(use_enable dbus) \
+ $(use_enable json) \
+ $(use_enable regex) \
+ $(use_enable snmp) \
+ $(use_enable snmp snmp-rfc) \
+ $(use_enable systemd)
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}"/keepalived.init-r1 keepalived
+ newconfd "${FILESDIR}"/keepalived.confd-r1 keepalived
+
+ systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
+ systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
+
+ use snmp && dodoc doc/*MIB.txt
+
+ docinto genhash
+ dodoc genhash/README genhash/AUTHOR genhash/ChangeLog
+ # This was badly named by upstream, it's more HOWTO than anything else.
+ newdoc INSTALL INSTALL+HOWTO
+
+ # Security risk to bundle SSL certs
+ rm -v "${ED}"/etc/keepalived/samples/*.pem || die
+ # Clean up sysvinit files
+ rm -rv "${ED}"/etc/sysconfig || die
+}