%global _sourcedir /root/rpmbuild/SOURCES/zabbix2 %global debug_package %{nil} Name: zabbix Version: 5.0.8 Release: %{?alphatag:0.}1%{?alphatag}%{?dist} Summary: The Enterprise-class open source monitoring solution Group: Applications/Internet License: GPLv2+ URL: http://www.zabbix.com/ Source0: %{name}-%{version}%{?alphatag}.tar.gz Source3: zabbix-logrotate.in Source6: zabbix-server.init Source11: zabbix-server.service Source15: zabbix-tmpfiles.conf Patch1: fping3-sourceip-option.patch Buildroot: %{_tmppath}/zabbix-%{version}-%{release}-root-%(%{__id_u} -n) %{!?build_agent: %global build_agent 1} %if 0%{?rhel} >= 6 %ifarch x86_64 %{!?build_agent2: %global build_agent2 1} %endif %endif %if 0%{?rhel} >= 7 %{!?build_server: %global build_server 1} %{!?build_with_mysql: %global build_with_mysql 1} %endif %if 0%{?build_with_mysql} == 0 && 0%{?build_with_pgsql} == 0 %global build_server 0 %if 0%{?build_with_sqlite} == 0 %global build_proxy 0 %endif %endif # FIXME: Building debuginfo is broken on RHEL-8. Disabled for now. %if 0%{?rhel} == 8 %define debug_package %{nil} %endif BuildRequires: make %if 0%{?rhel} >= 7 BuildRequires: systemd %if 0%{?rhel} >= 8 BuildRequires: Percona-Server-devel-57 BuildRequires: libssh-devel >= 0.9.0 %else BuildRequires: mysql-devel >= 5.5 BuildRequires: libssh2-devel >= 1.0.0 %endif BuildRequires: sqlite-devel %endif BuildRequires: net-snmpm-devel BuildRequires: openldap-devel BuildRequires: gnutls-devel BuildRequires: unixODBC-devel BuildRequires: curl-devel >= 7.13.1 BuildRequires: OpenIPMI-devel >= 2 BuildRequires: libxml2-devel BuildRequires: pcre-devel BuildRequires: libevent-devel %if 0%{?rhel} >= 6 BuildRequires: openssl-devel >= 1.0.1 %endif %description Zabbix is the ultimate enterprise-level software designed for real-time monitoring of millions of metrics collected from tens of thousands of servers, virtual machines and network devices. %package server-mysql Summary: Zabbix server for MySQL or MariaDB database Group: Applications/Internet Requires: fping Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Provides: zabbix-server = %{version}-%{release} Provides: zabbix-server-implementation = %{version}-%{release} Obsoletes: zabbix Obsoletes: zabbix-server %description server-mysql Zabbix server with MySQL or MariaDB database support. %prep %setup0 -q -n %{name}-%{version}%{?alphatag} %if 0%{?build_server} %patch1 -p1 %endif %build build_conf_common=" --enable-dependency-tracking --sysconfdir=/etc/zabbix --libdir=%{_libdir}/zabbix --enable-ipv6 --with-net-snmp --with-ldap --with-libcurl --with-openipmi --with-unixodbc --with-ssh --with-libxml2 --with-libevent --with-libpcre --with-openssl " # setup pass 3 %if 0%{?build_with_mysql} && ( 0%{?build_server} || 0%{?build_proxy} ) build_conf_3=" %if 0%{?build_server} --enable-server %endif %if 0%{?build_proxy} --enable-proxy %endif --with-mysql " build_db_3=mysql %endif # pass 3 if [ -n "$build_conf_3" ]; then %configure $build_conf_common $build_conf_3 make $make_flags %if 0%{?build_server} mv src/zabbix_server/zabbix_server "src/zabbix_server/zabbix_server_$build_db_3" %endif fi # # install # %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/zabbix mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/zabbix mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/ mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d mkdir -p $RPM_BUILD_ROOT%{_datadir}/zabbix mkdir -p $RPM_BUILD_ROOT%{_sbindir} mkdir -p $RPM_BUILD_ROOT%{_bindir} # install %if 0%{?build_server} install -m 0755 -p src/zabbix_server/zabbix_server_* $RPM_BUILD_ROOT%{_sbindir}/ cat conf/zabbix_server.conf | sed \ -e '/^# PidFile=/a \\nPidFile=%{_localstatedir}/run/zabbix/zabbix_server.pid' \ -e 's|^LogFile=.*|LogFile=%{_localstatedir}/log/zabbix/zabbix_server.log|g' \ -e '/^# LogFileSize=/a \\nLogFileSize=0' \ -e '/^# AlertScriptsPath=/a \\nAlertScriptsPath=/usr/lib/zabbix/alertscripts' \ -e '/^# ExternalScripts=/a \\nExternalScripts=/usr/lib/zabbix/externalscripts' \ -e 's|^DBUser=root|DBUser=zabbix|g' \ -e '/^# SNMPTrapperFile=.*/a \\nSNMPTrapperFile=/var/log/snmptrap/snmptrap.log' \ -e '/^# SocketDir=.*/a \\nSocketDir=/var/run/zabbix' \ > $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_server.conf cat %{SOURCE3} | sed \ -e 's|COMPONENT|server|g' \ > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-server install -Dm 0644 -p %{SOURCE11} $RPM_BUILD_ROOT%{_unitdir}/zabbix-server.service install -Dm 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d/zabbix-server.conf %endif mv %{buildroot}/usr/sbin/zabbix_server_mysql %{buildroot}/usr/sbin/zabbix_server %clean rm -rf $RPM_BUILD_ROOT # # files & scriptlets # %files %files server-mysql %defattr(-,root,root,-) /etc/logrotate.d/zabbix-server /etc/zabbix/zabbix_server.conf /usr/lib/systemd/system/zabbix-server.service /usr/lib/tmpfiles.d/zabbix-server.conf /usr/sbin/zabbix_server %changelog