ADD: New, simplier project to test
This commit is contained in:
137
zabbix-alpine-builder/zabbix/APKBUILD
Normal file
137
zabbix-alpine-builder/zabbix/APKBUILD
Normal file
@@ -0,0 +1,137 @@
|
||||
# Maintainer: Zabbix APK Builder <support@example.com>
|
||||
pkgname=zabbix
|
||||
pkgver=7.4.2
|
||||
pkgrel=0
|
||||
pkgdesc="An enterprise-class open source distributed monitoring solution"
|
||||
url="https://www.zabbix.com/"
|
||||
arch="all"
|
||||
license="AGPL-3.0-only"
|
||||
makedepends="
|
||||
alpine-sdk
|
||||
autoconf
|
||||
automake
|
||||
libtool
|
||||
pcre2-dev
|
||||
libevent-dev
|
||||
openssl-dev
|
||||
net-snmp-dev
|
||||
curl-dev
|
||||
sqlite-dev
|
||||
unixodbc-dev
|
||||
postgresql-dev
|
||||
mysql-dev
|
||||
libxml2-dev
|
||||
zlib-dev
|
||||
"
|
||||
subpackages="$pkgname-agent $pkgname-proxy"
|
||||
source="https://cdn.zabbix.com/zabbix/sources/stable/7.4/zabbix-$pkgver.tar.gz"
|
||||
|
||||
# User and group for Zabbix
|
||||
_zabbix_user="zabbix"
|
||||
_zabbix_group="zabbix"
|
||||
|
||||
prepare() {
|
||||
default_prepare
|
||||
autoreconf -fiv
|
||||
}
|
||||
|
||||
build() {
|
||||
# Common configuration options
|
||||
local _common_config="
|
||||
--prefix=/usr
|
||||
--sysconfdir=/etc/zabbix
|
||||
--localstatedir=/var
|
||||
--enable-ipv6
|
||||
--with-libcurl
|
||||
--with-libxml2
|
||||
--with-net-snmp
|
||||
--with-openssl
|
||||
--with-pcre2
|
||||
"
|
||||
|
||||
# Build agent
|
||||
./configure $_common_config \
|
||||
--enable-agent \
|
||||
--disable-server \
|
||||
--disable-proxy
|
||||
make
|
||||
|
||||
# Save agent binary
|
||||
mv src/zabbix_agentd/zabbix_agentd zabbix_agentd.built
|
||||
|
||||
# Clean for proxy build
|
||||
make clean
|
||||
|
||||
# Build proxy
|
||||
./configure $_common_config \
|
||||
--disable-agent \
|
||||
--disable-server \
|
||||
--enable-proxy \
|
||||
--with-sqlite3
|
||||
make
|
||||
|
||||
# Save proxy binary
|
||||
mv src/zabbix_proxy/zabbix_proxy zabbix_proxy.built
|
||||
}
|
||||
|
||||
package() {
|
||||
# Main package - create zabbix user
|
||||
addgroup -S $_zabbix_group
|
||||
adduser -S -D -H -h /var/lib/zabbix -s /sbin/nologin -G $_zabbix_group $_zabbix_user
|
||||
|
||||
# Create common directories
|
||||
install -d -m755 -o $_zabbix_user -g $_zabbix_group \
|
||||
"$pkgdir"/var/lib/zabbix \
|
||||
"$pkgdir"/var/log/zabbix \
|
||||
"$pkgdir"/var/run/zabbix
|
||||
|
||||
# Install common configuration files
|
||||
install -d -m755 "$pkgdir"/etc/zabbix
|
||||
}
|
||||
|
||||
agent() {
|
||||
pkgdesc="Zabbix monitoring agent"
|
||||
depends="pcre2 libevent openssl net-snmp curl"
|
||||
|
||||
# Install agent binary
|
||||
install -d -m755 "$subpkgdir"/usr/sbin
|
||||
install -m755 "$builddir"/zabbix_agentd.built "$subpkgdir"/usr/sbin/zabbix_agentd
|
||||
|
||||
# Install agent configuration
|
||||
install -d -m755 "$subpkgdir"/etc/zabbix
|
||||
install -m640 -o root -g $_zabbix_group \
|
||||
"$builddir"/conf/zabbix_agentd.conf "$subpkgdir"/etc/zabbix/
|
||||
|
||||
# Create agent-specific directories
|
||||
install -d -m755 -o $_zabbix_user -g $_zabbix_group \
|
||||
"$subpkgdir"/var/lib/zabbix/agent \
|
||||
"$subpkgdir"/var/log/zabbix/agent
|
||||
|
||||
# Install init script placeholder (to be created separately)
|
||||
install -d -m755 "$subpkgdir"/etc/init.d
|
||||
}
|
||||
|
||||
proxy() {
|
||||
pkgdesc="Zabbix monitoring proxy with SQLite support"
|
||||
depends="pcre2 libevent openssl net-snmp curl sqlite libxml2"
|
||||
|
||||
# Install proxy binary
|
||||
install -d -m755 "$subpkgdir"/usr/sbin
|
||||
install -m755 "$builddir"/zabbix_proxy.built "$subpkgdir"/usr/sbin/zabbix_proxy
|
||||
|
||||
# Install proxy configuration
|
||||
install -d -m755 "$subpkgdir"/etc/zabbix
|
||||
install -m640 -o root -g $_zabbix_group \
|
||||
"$builddir"/conf/zabbix_proxy.conf "$subpkgdir"/etc/zabbix/
|
||||
|
||||
# Create proxy-specific directories
|
||||
install -d -m755 -o $_zabbix_user -g $_zabbix_group \
|
||||
"$subpkgdir"/var/lib/zabbix/proxy \
|
||||
"$subpkgdir"/var/log/zabbix/proxy
|
||||
|
||||
# Install init script placeholder (to be created separately)
|
||||
install -d -m755 "$subpkgdir"/etc/init.d
|
||||
}
|
||||
|
||||
# Checksums will be updated by CI/CD workflow
|
||||
sha512sums="SKIP"
|
||||
Reference in New Issue
Block a user