diff options
author | Dan Goodliffe <dan.goodliffe@octal.co.uk> | 2025-03-19 16:59:53 +0000 |
---|---|---|
committer | Dan Goodliffe <dan.goodliffe@octal.co.uk> | 2025-03-19 17:06:12 +0000 |
commit | 733b071e786a370a0d6ddd74d2f21e7fe8b659ad (patch) | |
tree | 5680d22a5b0c08233b782633392a3ef4fb3bbc9e /sys-cluster/pacemaker | |
parent | Bump webkit-gtk version for openconnect saml gui (diff) | |
download | portage-733b071e786a370a0d6ddd74d2f21e7fe8b659ad.tar.bz2 portage-733b071e786a370a0d6ddd74d2f21e7fe8b659ad.tar.xz portage-733b071e786a370a0d6ddd74d2f21e7fe8b659ad.zip |
Verbatim copy of pacemaker and crmsh before removal upstream
Diffstat (limited to 'sys-cluster/pacemaker')
-rw-r--r-- | sys-cluster/pacemaker/Manifest | 4 | ||||
-rw-r--r-- | sys-cluster/pacemaker/files/pacemaker.initd | 41 | ||||
-rw-r--r-- | sys-cluster/pacemaker/metadata.xml | 20 | ||||
-rw-r--r-- | sys-cluster/pacemaker/pacemaker-2.1.2.ebuild | 75 |
4 files changed, 140 insertions, 0 deletions
diff --git a/sys-cluster/pacemaker/Manifest b/sys-cluster/pacemaker/Manifest new file mode 100644 index 0000000..0a73063 --- /dev/null +++ b/sys-cluster/pacemaker/Manifest @@ -0,0 +1,4 @@ +AUX pacemaker.initd 858 BLAKE2B a1b4d9efd14f03620f03733a0a4d33f97ed056f041b970376c17fe2b54a52a172ef208b70bcb6914d211c3157a206ce57aed13898396bd78532e69e697a55a7f SHA512 d644b18cf45c74c21c845dbab16b63fd23944d7d1f9616a866b6b07ea6108ca52a1bb445b698dc87d36d0131abad8fa96a8de85aef843df4669699de289cf587 +DIST Pacemaker-2.1.2.tar.gz 5092063 BLAKE2B 04689762cd3767fec35fc577b79007e7004411d4bb8676a0410c75619c35d1f158811555ea7d156accbb3e75a427128ab735ca21ad177934634b27fe2837175f SHA512 5c30ac5c371bb1f37215a9cf3e2eec701f7e4133252401dd2793b0908f2192de1d0b625cc37d84dfc9fd0885039c4d88e617110135c5e1a16c40cd3218603c26 +EBUILD pacemaker-2.1.2.ebuild 1614 BLAKE2B f7d96c450610ddf0f3195fecd4e213bc1e4372617097e6ccdd16cd2ce385ccda0a184612697b33d3553a5d17b7037ace888fe62353d0bb917ca2aece06eec68e SHA512 f36e0810ddc8ff193c269c7b7f9b586b46828e44e185fbfa283d7cc85213c982badd22a3da029fe7ef7364826d918680a383be3911cf913401848ed87b7349cb +MISC metadata.xml 809 BLAKE2B fa4cdce64387006f97d32578157d82bfe8b82f7f049accc11731e1f4e0d502aa01e7099045bd8d775757de92229428d7dd386019b6b02f85f00222e7e6d60fbb SHA512 48fc7614e31ed83c5de217cf737931f1d9257827e60c2a7eceb9c936041e82b3477822b9c31e320468b3634af1651502bb5ce5cb162319921d3d03197196fcad diff --git a/sys-cluster/pacemaker/files/pacemaker.initd b/sys-cluster/pacemaker/files/pacemaker.initd new file mode 100644 index 0000000..0264d34 --- /dev/null +++ b/sys-cluster/pacemaker/files/pacemaker.initd @@ -0,0 +1,41 @@ +#!/sbin/openrc-run +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +PIDFILE=/var/run/pacemaker.pid + +depend() { + need net corosync + use syslog +} + +start() { + nc=0 + ebegin "Starting Pacemaker Cluster Manager" + + checkpath -d -m 0750 -o hacluster:haclient /var/run/crm + + einfon "Waiting for Corosync startup ." + while true; do + /usr/sbin/corosync-cfgtool -s &>/dev/null && break + nc=$(expr $nc + 1) + if [ $nc -gt 30 ]; then + echo + eend 1 "Failed to detect Corosync startup, is it really running?" + exit 1 + fi + sleep 1 + echo -n "." + done + echo + start-stop-daemon --start -q --exec /usr/sbin/pacemakerd \ + --pidfile "${PIDFILE}" --make-pidfile --background \ + -- -f + eend $? +} + +stop() { + ebegin "Stopping Pacemaker Cluster Manager" + start-stop-daemon --stop -q --pidfile "${PIDFILE}" + eend $? +} diff --git a/sys-cluster/pacemaker/metadata.xml b/sys-cluster/pacemaker/metadata.xml new file mode 100644 index 0000000..b77bd1f --- /dev/null +++ b/sys-cluster/pacemaker/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>cluster@gentoo.org</email> + <name>Gentoo Cluster Project</name> + </maintainer> + <longdescription> + Pacemaker is a cluster resource manager. + It achieves maximum availability for your cluster services (aka. resources) by detecting and + recovering from node and resource-level failures by making use of the messaging and membership + capabilities provided by your preferred cluster infrastructure (either OpenAIS or Heartbeat). + </longdescription> + <use> + <flag name="smtp">Enable SMTP support via <pkg>net-libs/libesmtp</pkg></flag> + </use> + <upstream> + <remote-id type="github">ClusterLabs/pacemaker</remote-id> + </upstream> +</pkgmetadata> diff --git a/sys-cluster/pacemaker/pacemaker-2.1.2.ebuild b/sys-cluster/pacemaker/pacemaker-2.1.2.ebuild new file mode 100644 index 0000000..d3abc7b --- /dev/null +++ b/sys-cluster/pacemaker/pacemaker-2.1.2.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{9..10} ) + +inherit autotools python-single-r1 + +MY_P="${PN^}-${PV/_/-}" + +DESCRIPTION="Pacemaker CRM" +HOMEPAGE="http://www.linux-ha.org/wiki/Pacemaker" +SRC_URI="https://github.com/ClusterLabs/${PN}/archive/${MY_P}.tar.gz" + +LICENSE="GPL-2+ LGPL-2.1+ BSD CC-BY-SA-4.0" +SLOT="0" +KEYWORDS="amd64 ~hppa x86" +IUSE="acl smtp snmp" + +DEPEND=" + ${PYTHON_DEPS} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + >=sys-cluster/cluster-glue-1.0.12-r1 + >=sys-cluster/libqb-2.0.0:= + sys-cluster/resource-agents + sys-cluster/corosync + smtp? ( net-libs/libesmtp ) + snmp? ( net-analyzer/net-snmp ) +" +RDEPEND="${DEPEND}" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}/${PN}-${MY_P}" + +src_prepare() { + default + sed -i -e "s/ -ggdb//g" configure.ac || die + eautoreconf +} + +src_configure() { + # appends lib to localstatedir automatically + local myconf=( + --with-ocfdir=/usr/$(get_libdir)/ocf + --localstatedir=/var + --disable-fatal-warnings + --disable-static + --without-cs-quorum + --without-cman + --without-heartbeat + --with-corosync + --with-ais + $(use_with acl) + $(use_with smtp esmtp) + $(use_with snmp) + ) + + econf "${myconf[@]}" +} + +src_install() { + default + python_optimize + + # remove provided initd file as we need support for OpenRC + rm -rf "${ED}/etc/init.d" || die "Failed to remove old initd" + newinitd "${FILESDIR}/${PN}.initd" "${PN}" + + keepdir /var/lib/pacemaker/{blackbox,cib,cores,pengine} + keepdir /var/log/pacemaker/bundles + + find "${ED}" -name '*.la' -delete || die +} |