From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A7DA5158094 for ; Sun, 10 Jul 2022 22:52:10 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C6611E0D5A; Sun, 10 Jul 2022 22:52:09 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id AD1A8E0D5A for ; Sun, 10 Jul 2022 22:52:09 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id D838834109A for ; Sun, 10 Jul 2022 22:52:08 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 6964F535 for ; Sun, 10 Jul 2022 22:52:06 +0000 (UTC) From: "Quentin Retornaz" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Quentin Retornaz" Message-ID: <1657493393.5399d5ffca2cdfcfe8d98fc261018251bc9a15a7.quentin@gentoo> Subject: [gentoo-commits] repo/proj/libressl:master commit in: sys-cluster/keepalived/, sys-cluster/keepalived/files/ X-VCS-Repository: repo/proj/libressl X-VCS-Files: sys-cluster/keepalived/Manifest sys-cluster/keepalived/files/keepalived-2.2.7-libressl.patch sys-cluster/keepalived/files/keepalived.confd-r1 sys-cluster/keepalived/files/keepalived.init-r1 sys-cluster/keepalived/files/keepalived.service sys-cluster/keepalived/files/keepalived.service-r1 sys-cluster/keepalived/files/keepalived.service.conf sys-cluster/keepalived/keepalived-2.2.7.ebuild sys-cluster/keepalived/metadata.xml X-VCS-Directories: sys-cluster/keepalived/ sys-cluster/keepalived/files/ X-VCS-Committer: quentin X-VCS-Committer-Name: Quentin Retornaz X-VCS-Revision: 5399d5ffca2cdfcfe8d98fc261018251bc9a15a7 X-VCS-Branch: master Date: Sun, 10 Jul 2022 22:52:06 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: a8bbc2ee-22fe-4f3b-ba7b-34946b3f95f2 X-Archives-Hash: 115d40ab6923d2032d53b92e831f9450 commit: 5399d5ffca2cdfcfe8d98fc261018251bc9a15a7 Author: orbea riseup net> AuthorDate: Thu Jul 7 01:18:15 2022 +0000 Commit: Quentin Retornaz retornaz com> CommitDate: Sun Jul 10 22:49:53 2022 +0000 URL: https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=5399d5ff sys-cluster/keepalived: Add 2.2.7 Signed-off-by: orbea riseup.net> Signed-off-by: Quentin Retornaz retornaz.com> sys-cluster/keepalived/Manifest | 1 + .../files/keepalived-2.2.7-libressl.patch | 23 ++++++ sys-cluster/keepalived/files/keepalived.confd-r1 | 3 + sys-cluster/keepalived/files/keepalived.init-r1 | 21 ++++++ sys-cluster/keepalived/files/keepalived.service | 13 ++++ sys-cluster/keepalived/files/keepalived.service-r1 | 15 ++++ .../keepalived/files/keepalived.service.conf | 2 + sys-cluster/keepalived/keepalived-2.2.7.ebuild | 84 ++++++++++++++++++++++ sys-cluster/keepalived/metadata.xml | 10 +-- 9 files changed, 168 insertions(+), 4 deletions(-) diff --git a/sys-cluster/keepalived/Manifest b/sys-cluster/keepalived/Manifest index 6d62878..1ceeea4 100644 --- a/sys-cluster/keepalived/Manifest +++ b/sys-cluster/keepalived/Manifest @@ -1 +1,2 @@ DIST keepalived-1.4.0.tar.gz 731936 BLAKE2B b6adf7925cc81a4c6e6f69afaa28bd72f6c13076be03f2971775a63c823dac5c6fec46e0b6724af1a7ac9036a749b285429ba3ffad2d9ecc39ccc213cbe2cb28 SHA512 485eda5912d68663f011b8e79263ce1e38ed785919055b113536f63aab52c0d5f581a9ab1951c7f62362ac0a68ee921efc41934a4e535d6df7e59249ef32d6d3 +DIST keepalived-2.2.7.tar.gz 1180180 BLAKE2B 62c4534eb1eebeac596b628a1fa5fb4069498d532fdeff0dc51afbc71e90125bff7fcffb897da3fd34765c64f43d7b04dcf184169b1bc2cf33413e109f9f5cdc SHA512 9869437fe6f0c10590b13088002b53474a51102da9838a6575d835d006c4871b61324ab80e0e81e0a23d0124e6f033cfc7114749e87b8f736408f3f0bedb3968 diff --git a/sys-cluster/keepalived/files/keepalived-2.2.7-libressl.patch b/sys-cluster/keepalived/files/keepalived-2.2.7-libressl.patch new file mode 100644 index 0000000..c9876c1 --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived-2.2.7-libressl.patch @@ -0,0 +1,23 @@ +From 27f3bc8e6e08dee4073ce87fd191a2b1f20d12ed Mon Sep 17 00:00:00 2001 +From: orbea +Date: Wed, 6 Jul 2022 18:03:09 -0700 +Subject: [PATCH] Fix the build with libressl + +check_ssl.c:240: undefined reference to `SSL_set0_wbio' +--- + keepalived/check/check_ssl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/keepalived/check/check_ssl.c b/keepalived/check/check_ssl.c +index 0155fce..889205e 100644 +--- a/keepalived/check/check_ssl.c ++++ b/keepalived/check/check_ssl.c +@@ -234,7 +234,7 @@ ssl_connect(thread_ref_t thread, int new_req) + BIO_get_fd(req->bio, &bio_fd); + if (fcntl(bio_fd, F_SETFD, fcntl(bio_fd, F_GETFD) | FD_CLOEXEC) == -1) + log_message(LOG_INFO, "Setting CLOEXEC failed on ssl socket - errno %d", errno); +-#ifdef HAVE_SSL_SET0_RBIO ++#if defined(HAVE_SSL_SET0_RBIO) && !defined(LIBRESSL_VERSION_NUMBER) + BIO_up_ref(req->bio); + SSL_set0_rbio(req->ssl, req->bio); + SSL_set0_wbio(req->ssl, req->bio); diff --git a/sys-cluster/keepalived/files/keepalived.confd-r1 b/sys-cluster/keepalived/files/keepalived.confd-r1 new file mode 100644 index 0000000..5b273c1 --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived.confd-r1 @@ -0,0 +1,3 @@ +# Keepalived options +# Increase logging: +#KEEPALIVED_OPTS="-D" diff --git a/sys-cluster/keepalived/files/keepalived.init-r1 b/sys-cluster/keepalived/files/keepalived.init-r1 new file mode 100644 index 0000000..98277b0 --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived.init-r1 @@ -0,0 +1,21 @@ +#!/sbin/openrc-run +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +depend() { + use logger + # The interfaces do not actually need to exist to start, it handles them gracefully. + use net +} + +command="/usr/sbin/keepalived" +command_args="${KEEPALIVED_OPTS}" +extra_started_commands="reload" +pidfile="/run/${RC_SVCNAME}.pid" +required_files="/etc/keepalived/keepalived.conf" + +reload() { + ebegin "Reloading ${RC_SVCNAME}" + start-stop-daemon --signal HUP --pidfile "${pidfile}" + eend $? +} diff --git a/sys-cluster/keepalived/files/keepalived.service b/sys-cluster/keepalived/files/keepalived.service new file mode 100644 index 0000000..ec47a57 --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived.service @@ -0,0 +1,13 @@ +[Unit] +Description=LVS and VRRP High Availability Monitor +After=network-online.target syslog.target + +[Service] +Type=forking +PIDFile=/run/keepalived.pid +KillMode=process +ExecStart=/usr/sbin/keepalived $KEEPALIVED_OPTIONS +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/sys-cluster/keepalived/files/keepalived.service-r1 b/sys-cluster/keepalived/files/keepalived.service-r1 new file mode 100644 index 0000000..a3624ed --- /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/files/keepalived.service.conf b/sys-cluster/keepalived/files/keepalived.service.conf new file mode 100644 index 0000000..cb24394 --- /dev/null +++ b/sys-cluster/keepalived/files/keepalived.service.conf @@ -0,0 +1,2 @@ +[Service] +#Environment="KEEPALIVED_OPTIONS=-D" diff --git a/sys-cluster/keepalived/keepalived-2.2.7.ebuild b/sys-cluster/keepalived/keepalived-2.2.7.ebuild new file mode 100644 index 0000000..5d9ee3f --- /dev/null +++ b/sys-cluster/keepalived/keepalived-2.2.7.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +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 +) + +PATCHES=( + "${FILESDIR}"/${P}-libressl.patch +) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + # keepalived has support to dynamically use some libraries instead of + # linking them: + #--enable-dynamic-linking \ + #--enable-libiptc-dynamic \ + #--enable-libnl-dynamic \ + #--enable-libxtables-dynamic \ + econf \ + --with-init="$(usex systemd systemd custom)" \ + --with-kernel-dir="${ESYSROOT}"/usr \ + --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 + + # This was badly named by upstream, it's more HOWTO than anything else. + newdoc INSTALL INSTALL+HOWTO + + # Clean up sysvinit files + rm -rv "${ED}"/etc/sysconfig || die +} diff --git a/sys-cluster/keepalived/metadata.xml b/sys-cluster/keepalived/metadata.xml index 4de8679..451dc01 100644 --- a/sys-cluster/keepalived/metadata.xml +++ b/sys-cluster/keepalived/metadata.xml @@ -1,14 +1,16 @@ - + cluster@gentoo.org Gentoo Cluster Project - - VRRP2 implementation. Used for setting up high availability clusters. - + compile with support for Bidirectional Forwarding Detection (BFD). compile with signal to dump configuration and stats as JSON. + compile with support for regex in health checks + + acassen/keepalived +