You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.4 KiB
79 lines
2.4 KiB
# Copyright 1999-2024 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit systemd
|
|
|
|
DESCRIPTION="Icinga Web 2 plugin for configuration"
|
|
HOMEPAGE="https://github.com/Icinga/icingaweb2-module-director/"
|
|
|
|
if [[ ${PV} == *9999 ]]; then
|
|
inherit git-r3
|
|
EGIT_REPO_URI="https://github.com/Icinga/${PN}.git"
|
|
else
|
|
KEYWORDS="~amd64 ~x86"
|
|
SRC_URI="https://codeload.github.com/Icinga/${PN}/tar.gz/v${PV} -> ${P}.tar.gz"
|
|
fi
|
|
|
|
LICENSE="GPL-2"
|
|
SLOT="0"
|
|
# Dependencies according to
|
|
# https://github.com/Icinga/icingaweb2-module-director/blob/master/doc/02-Installation.md.d/From-Source.md
|
|
IUSE="php_targets_php8-1 php_targets_php8-2 php_targets_php8-3"
|
|
|
|
PHP_DEPEND="
|
|
php_targets_php8-1? ( dev-lang/php:8.1[curl,iconv,pcntl,posix,sockets] )
|
|
php_targets_php8-2? ( dev-lang/php:8.2[curl,iconv,pcntl,posix,sockets] )
|
|
php_targets_php8-3? ( dev-lang/php:8.3[curl,iconv,pcntl,posix,sockets] )
|
|
"
|
|
DEPEND="
|
|
acct-group/icingaweb2
|
|
acct-user/icingadirector
|
|
"
|
|
RDEPEND="
|
|
${PHP_DEPEND}
|
|
${DEPEND}
|
|
>=www-apps/icingaweb2-module-incubator-0.22.0
|
|
>=dev-libs/icinga-php-library-0.13.0
|
|
>=dev-libs/icinga-php-thirdparty-0.12.0
|
|
>=www-apps/icingaweb2-2.9.0
|
|
"
|
|
|
|
src_install() {
|
|
insinto /usr/share/icingaweb2/modules/${PN##*-}/
|
|
doins -r .
|
|
|
|
exeinto /usr/share/icingaweb2/bin/
|
|
doexe "${FILESDIR}"/icinga-director.sh
|
|
|
|
doinitd "${FILESDIR}"/director
|
|
|
|
keepdir /var/lib/${PN}
|
|
fowners icingadirector:icingaweb2 /var/lib/${PN}
|
|
fperms 0750 /var/lib/${PN}
|
|
sed -e "s|/usr/bin/icingacli|/usr/share/icingaweb2/bin/icingacli|g" \
|
|
contrib/systemd/icinga-director.service > "${T}"/icinga-director.service \
|
|
|| die "failed to patch icinga-director.service"
|
|
systemd_dounit "${T}"/icinga-director.service
|
|
}
|
|
|
|
pkg_postinst() {
|
|
# According to PMS this can be a space-separated list of version
|
|
# numbers, even though in practice it is typically just one.
|
|
local oldver
|
|
for oldver in ${REPLACING_VERSIONS}; do
|
|
if ver_test "${oldver}" -lt "1.11.0"; then
|
|
ewarn "You are upgrading from ${oldver} to ${PVR}"
|
|
ewarn "please read https://github.com/Icinga/icingaweb2-module-director/blob/master/doc/05-Upgrading.md#upgrade-to-1.11.x"
|
|
ewarn "for breaking changes"
|
|
ewarn
|
|
ewarn "Also, don't forget to upgrade database schema."
|
|
ewarn "Otherwise icingaweb2-module-director will not work!"
|
|
ewarn "(Web GUI => Configuration => Modules => director => Configuration)"
|
|
ewarn
|
|
break
|
|
fi
|
|
done
|
|
}
|