diff options
Diffstat (limited to 'testing/zabbix/APKBUILD')
-rw-r--r-- | testing/zabbix/APKBUILD | 219 |
1 files changed, 219 insertions, 0 deletions
diff --git a/testing/zabbix/APKBUILD b/testing/zabbix/APKBUILD new file mode 100644 index 0000000000..3a7c7a36f3 --- /dev/null +++ b/testing/zabbix/APKBUILD @@ -0,0 +1,219 @@ +# Contributor: Ćukasz Jendrysik <scadu@yandex.com> +# Contributor: Jeff Bilyk <jbilyk at gmail> +# Contributor: Leonardo Arena <rnalrd@alpinelinux.org> +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +pkgname=zabbix +_realver=3.0.0rc2 +pkgver=${_realver/rc/_rc} +pkgrel=0 +pkgdesc="Enterprise-class open source distributed monitoring" +url="http://www.zabbix.com" +arch="all" +license="GPL" +depends="fping" +makedepends="postgresql-dev curl-dev net-snmp-dev + sqlite-dev mariadb-dev curl-dev openipmi-dev unixodbc-dev + libxml2-dev autoconf automake libssh2" +install="$pkgname.pre-install" +pkgusers="zabbix" +pkggroups="zabbix" +subpackages="$pkgname-doc $pkgname-agent $pkgname-pgsql $pkgname-mysql + $pkgname-webif $pkgname-sqlite $pkgname-utils $pkgname-setup" +source="http://downloads.sourceforge.net/$pkgname/$pkgname-$_realver.tar.gz + zabbix-getloadavg.patch + automake.patch + musl-fix-includes.patch + zabbix-server.initd + zabbix-server.confd + zabbix-agentd.initd + zabbix-proxy.initd + zabbix_server.conf.patch + " + +_builddir="$srcdir"/$pkgname-$_realver + +prepare() { + cd "$_builddir" + # update_config_sub || return 1 + for i in $source; do + case $i in + *eglibc*.patch) + if [ "$CLIBC" == "eglibc" ]; then + msg "Applying $i" + patch -p1 -i "$srcdir"/$i || return 1 + fi + ;; + *.patch) + msg "Applying $i" + patch -p1 -i "$srcdir"/$i || return 1 + ;; + esac + done + aclocal -I m4 && autoconf && autoheader \ + && automake --add-missing || return 1 + # update_config_sub + # Fix config file locations + for file in server agentd proxy; do + sed -i "$_builddir"/conf/zabbix_${file}.conf \ + -e 's|SNMPTrapperFile=/tmp|SNMPTrapperFile=/var/log/zabbix|' \ + -e 's|PidFile=/tmp|PidFile=/var/run/zabbix|' \ + -e 's|LogFile=/tmp|LogFile=/var/log/zabbix|' || return 1 + done +} + +build() { + # set default configure flags + _configure="--prefix=/usr \ + --sysconfdir=/etc/zabbix \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --enable-server \ + --enable-agent \ + --enable-proxy \ + --enable-ipv6 \ + --with-net-snmp \ + --with-libcurl \ + --with-libxml2 \ + --with-openipmi \ + --with-unixodbc \ + --with-ssh2 + " + # we run build for each db type + # make sure prepare is same for each db + for db in postgresql mysql sqlite3; do + cd "$srcdir" + msg "Building for $db" + cp -r "$pkgname-$_realver" "$pkgname-$_realver-$db" + cd "$_builddir-$db" + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --with-$db \ + $_configure \ + || return 1 + make || return 1 + done +} + + +package() { + # doing manual install + for i in agentd proxy server; do + install -D -m755 "$_builddir"/man/zabbix_$i.man \ + "$pkgdir"/usr/share/man/man8/zabbix_$i.8 + done + for i in get sender; do + install -D -m755 "$_builddir"/man/zabbix_$i.man \ + "$pkgdir"/usr/share/man/man1/zabbix_$i.1 + done + install -d -m0750 -o zabbix -g zabbix \ + "$pkgdir"/var/run/zabbix "$pkgdir"/var/log/zabbix + install -D -m0644 "$_builddir"/conf/zabbix_server.conf \ + "$pkgdir"/etc/zabbix/zabbix_server.conf + install -D -m0644 "$_builddir"/conf/zabbix_trapper.conf \ + "$pkgdir"/etc/zabbix/zabbix_trapper.conf + for i in server proxy; do + install -D -m0755 "$srcdir"/zabbix-$i.initd \ + "$pkgdir"/etc/init.d/zabbix-$i || return 1 + done + install -D -m0644 "$srcdir"/zabbix-server.confd \ + "$pkgdir"/etc/conf.d/zabbix-server || return 1 +} + +setup() { + arch="noarch" + pkgdesc="Zabbix images and sql files" + depends= + mkdir -p "$subpkgdir"/usr/share/zabbix/ || return 1 + mv "$_builddir"/database "$subpkgdir"/usr/share/zabbix/ +} + +_do_db() { + pkgdesc="Zabbix server with $1 database support" + depends="$pkgname $2" + local i= + mkdir -p "$subpkgdir"/usr/sbin + mv "$_builddir-$1"/src/zabbix_server/zabbix_server \ + "$subpkgdir"/usr/sbin/ || return 1 + mv "$_builddir-$1"/src/zabbix_proxy/zabbix_proxy \ + "$subpkgdir"/usr/sbin/ || return 1 + install -D -m0644 "$_builddir"/conf/zabbix_proxy.conf \ + "$pkgdir"/etc/zabbix/zabbix_proxy.conf || return 1 + cd "$_builddir" + for i in upgrades/dbpatches/*/$1; do + [ -e $i ] || continue + mkdir -p "$subpkgdir"/usr/share/zabbix/${i%/*} + mv "$i" "$subpkgdir"/usr/share/zabbix/$i + done + return 0 +} + +pgsql() { _do_db postgresql "!$pkgname-mysql !$pkgname-sqlite";} +mysql() { _do_db mysql "!$pkgname-pgsql !$pkgname-sqlite";} +sqlite(){ _do_db sqlite3 "!$pkgname-pgsql !$pkgname-mysql";} + +utils() { + pkgdesc="Zabbix client utilities" + depends= + mkdir -p "$subpkgdir"/usr/bin + mv "$_builddir-postgresql"/src/zabbix_get/zabbix_get \ + "$subpkgdir"/usr/bin + mv "$_builddir-postgresql"/src/zabbix_sender/zabbix_sender \ + "$subpkgdir"/usr/bin +} + +webif() { + arch="noarch" + pkgdesc="Zabbix web-interface" + depends="php php-pgsql php-gd php-curl php-bcmath php-sockets php-iconv + php-xmlreader php-ctype php-gettext" + _wwwdir="$subpkgdir"/usr/share/webapps/zabbix + mkdir -p $_wwwdir + mv "$_builddir"/frontends/php/* "$_wwwdir" +} + +agent() { + pkgdesc="Zabbix Network Monitoring Agent" + depends= + install="$subpkgname.pre-install" + install -d -m0750 -o zabbix -g zabbix \ + "$subpkgdir"/var/run/zabbix "$subpkgdir"/var/log/zabbix + install -D -m0644 "$_builddir"/conf/zabbix_agentd.conf \ + "$subpkgdir"/etc/zabbix/zabbix_agentd.conf + install -D -m0755 "$srcdir"/zabbix-agentd.initd \ + "$subpkgdir"/etc/init.d/zabbix-agentd + mkdir -p "$subpkgdir"/usr/sbin + mv "$_builddir-postgresql"/src/zabbix_agent/zabbix_agent \ + "$subpkgdir"/usr/sbin/ + mv "$_builddir-postgresql"/src/zabbix_agent/zabbix_agentd \ + "$subpkgdir"/usr/sbin/ + +} + +md5sums="7c4cc115d3ef2bc5dfc453e9d1b3be63 zabbix-3.0.0rc2.tar.gz +3a71e310bd2b38498a7c6830169f7480 zabbix-getloadavg.patch +bf62c539870874e11de39c60cb974786 automake.patch +40c81bdec85815f4ba637eb6528cc5e8 musl-fix-includes.patch +f44105322022734dc42032db0396fe9e zabbix-server.initd +bd91d0243cf8f72b86b9bf0b91963663 zabbix-server.confd +d9711779f969958c8aa348991170578b zabbix-agentd.initd +0ce2ab963a0bc5a0a6e17a708b7c7064 zabbix-proxy.initd +3d031903ea14e1de0804ff1230fd968e zabbix_server.conf.patch" +sha256sums="43f23a61cb73868338fa20762ace4f135cc9d63e3a585f58dd4f2d0d947e2de9 zabbix-3.0.0rc2.tar.gz +d2c0651c5fa67a1857707552e79ecece7ca95c149042460c40456634bf7611dc zabbix-getloadavg.patch +b347ca77660e69bea353c50e2fce0c7c4cc837f782c9f84f74ba92c1a62b4c1b automake.patch +38b4e1a5d5c16c7d9b31347acf710d84b693f6e1df365d1072548e897e034884 musl-fix-includes.patch +d4c6dcf9b78f78a2ef2b4a4f2763fb90f81d0298bc90bd164db8604f161182ec zabbix-server.initd +ddf75041fb0afc5b211dd79a934341cc9db4325447ad33a42cbf09bdfb5cad42 zabbix-server.confd +62223dce45fb915cc66eb24c839cf63e81c80159da9360e7669e7384082e3a08 zabbix-agentd.initd +ec3a8c564be20221ea7560fbec345191cd251d58bd15e9c41abec40c2cf5b4f2 zabbix-proxy.initd +f87b221d32b3088db78c013f11d035339d7058817092dfdcc39898b4b3ee8448 zabbix_server.conf.patch" +sha512sums="134ebe2ad95bc43a629620065d6ff4137c1e958851da7139d91873de63e366c306c5c1d503bf44c3ff74fd9c0d57a6becad236257b1914fd67a8e6c49230183b zabbix-3.0.0rc2.tar.gz +b65c6ba7701d98ae7f6fe2124c1d2b8b8fea3c3cc7ee080bf99f5afff0aaa6a025c2a1f5136b4700b53d1b7609e6185642650d7edd013c554b2af37fddae771c zabbix-getloadavg.patch +9bff8966cb8b3f1767bfb1b3f3529bca5c9957f2c8179a40ded3b4e43615ba9fb408aef43092fd119b7df80b042555d05c9780fac3760176b95524aa48252fee automake.patch +9b87ec1ea4a9cbb501c16012d498cdae82a696f4cd495e1e8cb201d9e31c6e135da5bb264c6273f2de87297bd3e4bd16f66703610686f5d610e3316ee24aac91 musl-fix-includes.patch +3a25bf9f428f55545dd735aea2855e0e4927e006ca01a2f918ec161ffe9b2ec66e46598bf34208e24535e1d04e33087f42eb8226b17eb4118abd6507bbb10ff5 zabbix-server.initd +a91821c6086a1fc0197750cc68073419defcb7d775b11b14a993409a8f61c7a1a0a0af95de27eed9f3b8357f8362640cb1b26b91b56f4f1d714ca6f222d02b80 zabbix-server.confd +7cc2672b717f1b47b12342fe225e9dc3838c61a0bf81d359d0a71efb0adc9b354fb8bc8b5bb64c9defa5700bcaf651b35778194a50b6b03b0a723dce76460092 zabbix-agentd.initd +e19490e724c6e4ecdadf7ee3898567b82f18ea2a894ef709bfc181c3076d50435b45429207dd4d537aacbec0242d83393240e48b434d9681ebb0d67a45643ed1 zabbix-proxy.initd +e0c9f937d39e15fa34e70e8ae9e6578b221b51c13dc0515e807675d153a85ab6370ed20ce2d06aa4457baaf3963edce525cd00e85fb105b36b58741798d13836 zabbix_server.conf.patch" |