Skip to content

Instantly share code, notes, and snippets.

@Alessandro-Barbieri
Last active April 8, 2022 14:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Alessandro-Barbieri/19a7de5ffc6ce7ffe42cc061412c81b8 to your computer and use it in GitHub Desktop.
Save Alessandro-Barbieri/19a7de5ffc6ce7ffe42cc061412c81b8 to your computer and use it in GitHub Desktop.
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools systemd
COMMIT="95d854b32a7cb20cb9a0e90c71d8cc269657304d"
DESCRIPTION="The Booth Cluster Ticket Manager"
HOMEPAGE="https://github.com/ClusterLabs/booth"
SRC_URI="https://github.com/ClusterLabs/${PN}/archive/${COMMIT}.tar.gz -> ${PF}.tar.gz"
S="${WORKDIR}/${PN}-${COMMIT}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+glue test"
RDEPEND="
acct-group/haclient
acct-user/hacluster
dev-libs/libxml2
sys-cluster/pacemaker
sys-libs/zlib
|| (
dev-libs/libgcrypt
app-crypt/mhash
)
glue? ( sys-cluster/cluster-glue )
!glue? (
dev-libs/glib
sys-apps/systemd
sys-cluster/libqb
)
"
DEPEND="${RDEPEND}"
RESTRICT="!test? ( test )"
src_prepare() {
default
eautoreconf
}
src_configure() {
local myconf=(
--disable-coverage
--disable-fatal-warnings
--enable-user-flags
--with-initddir="${EPREFIX}/etc/init.d"
--with-ocfdir="${EPREFIX}/usr/$(get_libdir)/ocd"
$(use_with glue)
$(use_with test run-build-tests)
)
econf "${myconf[@]}"
}
src_install() {
default
insinto "/usr/$(get_libdir)/firewalld/services"
doins contrib/geo-cluster.firewalld.xml
systemd_dounit conf/booth{@,-arbitrator}.service
}
DIST booth-1.0_p20210730.tar.gz 148323 BLAKE2B 5b3594cd64b29131d6e7a7073949c1fa7ff13e76f7ae5e7b5594d212e532979af43fac9affb969ed4a12e92476f32e08250d27fd8fdc303628f7a3dc0520558f SHA512 8a1ef09385b77d89d503325a8edf18a28e75c36e611017993c059258f30bf68b5c48c1685cfcb2a04b2628cffe4682a73750b93cf609fe3317abd7fa4898eb81
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email></email>
<name></name>
</maintainer>
<upstream>
<remote-id type="github">ClusterLabs/booth</remote-id>
</upstream>
<longdescription lang="en">
The Booth Cluster Ticket Manager
Booth manages tickets which authorize cluster sites located in geographically dispersed locations to run resources. It facilitates support of geographically distributed clustering in Pacemaker.
Booth is based on the Raft consensus algorithm. Though the implementation is not complete (there is no log) and there are a few additions and modifications, booth guarantees that a ticket is always available at just one site as long as it has exclusive control of the tickets.
</longdescription>
<use>
<flag name="glue">Use libraries from <pkg>sys-cluster/cluster-glue</pkg></flag>
</use>
</pkgmetadata>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment