net-analyzer/icinga2: bup
authorMatthew Thode <mthode@mthode.org>
Wed, 26 Aug 2015 15:01:26 +0000 (10:01 -0500)
committerMatthew Thode <mthode@mthode.org>
Wed, 26 Aug 2015 15:02:02 +0000 (10:02 -0500)
Package-Manager: portage-2.2.20.1

net-analyzer/icinga2/Manifest
net-analyzer/icinga2/icinga2-2.3.9.ebuild [new file with mode: 0644]

index 1d6038f9386623b4cb0716f493835bc483bf9999..e91106becc68ced1793d166b983424efe2a15c39 100644 (file)
@@ -2,3 +2,4 @@ DIST icinga2-2.3.5.tar.gz 804780 SHA256 712d13e997fc6fbf02f8c2046851b1fda1291305
 DIST icinga2-2.3.6.tar.gz 816718 SHA256 96453fbfa418329b74d45bd2a202302add03d907fac28644e1228d869c478093 SHA512 bb16546bce387f4d828c1bba7dc0e5e1e89ca9c8a4bbb931d9fabd3fb0089329751814bee883b3320e0a7a0b2dd26c1e5b2970b2c33fc8172c3e73784d92a960 WHIRLPOOL 21d410a401ac8ada2857640061ede691b0c41b54aca49409fb3e7002195b1975c653351afffd06a375b6a78948ee96e875dcc982971d3332a994752ccc4c80af
 DIST icinga2-2.3.7.tar.gz 817712 SHA256 067335129daf464d800f48d75bf2fde6ae63c99db6a5126d3d322b6562dfdf28 SHA512 46c940b8081dc3e064121acdab366ba28c1156fc563064022099c3186e310d20bcc1743b643046e0579f42e8ea90b9dfa1f868b28df3eedcd18926c7f65c98f6 WHIRLPOOL 5363191df2c5a57d135866589fe683ea53623c3b0583c299e248e32e4822d1f0bb7806ad573ee9ecd402edecb80dc1ced5850550c595b97562126670b74977f9
 DIST icinga2-2.3.8.tar.gz 817951 SHA256 43bf41a7afc03c1527c82139e74cce17c5b3609a8ec14bb0db1f8df193a14054 SHA512 2536725b50ef158ed7447631fe3480dade1f44a86f40d633138cf83a624fee5f605edf075392a68858f5eebfb9ef89cb5ca811d3120ede7a103df9a448cefa55 WHIRLPOOL c768ad6b62a09e1db05220dd91e5c937db792bf1e512385780a613556a9623b9e3b4d2fe355505d674407ed1a4d693bb554f84d1ca03aa08c04743e29a544423
+DIST icinga2-2.3.9.tar.gz 829706 SHA256 af6aa49ac9ce90e2ecf331b092624f5d6462d31ca5b4458db1c3d974391183c3 SHA512 29ec8eb68d77bf2cdb2353bd6d3015d7a5363a3b7979207afb3af26e2de634159d988c7dcb2c979ed8a73fd55c2d42c44f47b35d97fe1fb47783dac8c3593470 WHIRLPOOL 854b86006ddfd85328408248d59b77041a63c2a7b1460c9ea3e344cdc3f375973654109455abd4ed7d376d91a225b37ba318727b49a05d27a9a2938cef956a05
diff --git a/net-analyzer/icinga2/icinga2-2.3.9.ebuild b/net-analyzer/icinga2/icinga2-2.3.9.ebuild
new file mode 100644 (file)
index 0000000..c996c27
--- /dev/null
@@ -0,0 +1,157 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit cmake-utils depend.apache eutils systemd toolchain-funcs user versionator
+
+DESCRIPTION="Distributed, general purpose, network monitoring engine"
+HOMEPAGE="http://icinga.org/icinga2"
+SRC_URI="https://github.com/Icinga/icinga2/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+mysql postgres classicui minimal nano-syntax +plugins +vim-syntax"
+
+DEPEND="
+       dev-libs/openssl:=
+       >=dev-libs/boost-1.41
+       sys-devel/bison
+       >=sys-devel/flex-2.5.35
+       mysql? ( virtual/mysql )
+       postgres? ( dev-db/postgresql:= )"
+
+RDEPEND="
+       ${DEPEND}
+       plugins? ( || (
+               net-analyzer/monitoring-plugins
+               net-analyzer/nagios-plugins
+       ) )
+       classicui? ( net-analyzer/icinga[web] )"
+
+REQUIRED_USE="!minimal? ( || ( mysql postgres ) )"
+
+want_apache2
+
+pkg_setup() {
+       enewgroup icinga
+       enewgroup icingacmd
+       enewgroup nagios  # for plugins
+       enewuser icinga -1 -1 /var/lib/icinga2 "icinga,icingacmd,nagios"
+}
+
+src_prepare() {
+#      epatch "${FILESDIR}/${P}-create_var_cache.patch"
+       epatch_user
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DICINGA2_UNITY_BUILD=FALSE
+               -DCMAKE_VERBOSE_MAKEFILE=ON
+               -DCMAKE_BUILD_TYPE=None
+               -DCMAKE_INSTALL_PREFIX=/usr
+               -DCMAKE_INSTALL_SYSCONFDIR=/etc
+               -DCMAKE_INSTALL_LOCALSTATEDIR=/var
+               -DICINGA2_SYSCONFIGFILE=/etc/conf.d/icinga2
+               -DICINGA2_USER=icinga
+               -DICINGA2_GROUP=icingacmd
+               -DICINGA2_COMMAND_USER=icinga
+               -DICINGA2_COMMAND_GROUP=icingacmd
+               -DINSTALL_SYSTEMD_SERVICE_AND_INITSCRIPT=yes
+       )
+       if use postgres; then
+               mycmakeargs+=(
+                       -DICINGA2_WITH_PGSQL=ON
+               )
+       else
+               mycmakeargs+=(
+                       -DICINGA2_WITH_PGSQL=OFF
+               )
+       fi
+       if use mysql; then
+               mycmakeargs+=(
+                       -DICINGA2_WITH_MYSQL=ON
+               )
+       else
+               mycmakeargs+=(
+                       -DICINGA2_WITH_MYSQL=OFF
+               )
+       fi
+       cmake-utils_src_configure
+}
+
+src_install() {
+       BUILDDIR="${WORKDIR}"/icinga2-${PV}_build
+       cd $BUILDDIR
+
+       #if [[ -f Makefile ]] || [[ -f GNUmakefile ]] || [[ -f makefile ]] ; then
+
+               emake DESTDIR="${D}" install
+       #fi
+
+       cd "${WORKDIR}"/icinga2-${PV}
+       if ! declare -p DOCS >/dev/null 2>&1 ; then
+               local d
+               for d in README* ChangeLog AUTHORS NEWS TODO CHANGES THANKS BUGS \
+                               FAQ CREDITS CHANGELOG ; do
+                       [[ -s "${d}" ]] && dodoc "${d}"
+               done
+       elif declare -p DOCS | grep -q "^declare -a " ; then
+               dodoc "${DOCS[@]}"
+       else
+               dodoc ${DOCS}
+       fi
+
+       newinitd "${FILESDIR}"/icinga2.initd icinga2
+       newconfd "${FILESDIR}"/icinga2.confd icinga2
+
+       if use mysql ; then
+               docinto schema
+               newdoc "${WORKDIR}"/icinga2-${PV}/lib/db_ido_mysql/schema/mysql.sql mysql.sql
+               docinto schema/upgrade
+               #newdoc "${WORKDIR}"/icinga2-${PV}/components/db_ido_mysql/schema/upgrade/0.0.11.sql mysql-upgrade-1.12.0.sql
+       elif use postgres ; then
+               docinto schema
+               newdoc "${WORKDIR}"/icinga2-${PV}/lib/db_ido_pgsql/schema/pgsql.sql pgsql.sql
+               docinto schema/upgrade
+               #newdoc "${WORKDIR}"/icinga2-${PV}/components/db_ido_pgsql/schema/upgrade/0.0.11.sql pgsql-upgrade-1.12.0.sql
+       fi
+
+       keepdir /etc/icinga2
+       keepdir /var/lib/icinga2/api/zones
+       keepdir /var/lib/icinga2/api/repository
+       keepdir /var/lib/icinga2/api/log
+       keepdir /var/spool/icinga2/perfdata
+
+       rm -r "${D}var/run" || die "failed to remove /var/run"
+       rm -r "${D}var/cache" || die "failed to remove /var/cache"
+
+       fowners icinga:icinga /etc/icinga2
+       fowners icinga:icinga /var/lib/icinga2
+       fowners icinga:icinga /var/spool/icinga2
+       fowners icinga:icinga /var/spool/icinga2/perfdata
+       fowners icinga:icingacmd /var/log/icinga2
+
+       fperms ug+rwX,o-rwx /etc/icinga2
+       fperms ug+rwX,o-rwx /var/lib/icinga2
+       fperms ug+rwX,o-rwx /var/spool/icinga2
+       fperms ug+rwX,o-rwx /var/log/icinga2
+
+       if use vim-syntax; then
+               insinto /usr/share/vim/vimfiles
+               doins -r tools/syntax/vim/ftdetect
+               doins -r tools/syntax/vim/syntax
+       fi
+
+       if use nano-syntax; then
+               insinto /usr/share/nano
+               doins tools/syntax/nano/icinga2.nanorc
+       fi
+}
+
+pkg_postinst() {
+       elog "DB IDO schema upgrade required. http://docs.icinga.org/icinga2/snapshot/chapter-2.html#upgrading-the-mysql-database"
+       elog "You will need to update your configuration files, see https://dev.icinga.org/issues/5909"
+}